(九)Docker仓库

itmahy
itmahy
发布于 2024-01-18 / 54 阅读
0
0

(九)Docker仓库

仓库介绍

Docker仓库是用于存储和管理Docker镜像的中央存储库。它允许用户上传、下载和共享Docker镜像,方便在不同的环境中部署和运行应用程序。

Docker仓库分为两种类型:公共仓库和私有仓库。

  1. 公共仓库:Docker Hub是最常用的公共仓库,它包含了大量的官方和社区维护的镜像,用户可以通过Docker Hub来获取这些镜像。Docker Hub还提供了一些额外的功能,如自动构建、团队协作等。此外,还有阿里云的仓库,在国内使用比较方便。

  2. 私有仓库:私有仓库用于存储和管理自己的镜像,可以在内部网络中使用,也可以通过网络访问。私有仓库可以提供更高的安全性和定制化的功能,适用于企业内部或特定项目的需求。

无论是公共仓库还是私有仓库,用户都可以使用Docker命令行工具或Docker客户端来与仓库进行交互,例如搜索、下载、上传和删除镜像等操作。

阿里云提交/拉取镜像

生成新镜像

下载 ubuntu镜像

查看是否下载成功

运行 ubuntu 镜像,生成并进入容器,但是这个容器中并没有 vim

在容器中下载vim(在容器中操作)

  • 更新 apt-agt资源

  • 安装vim

使用 commit提交新的镜像到本地
命令格式:
docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签名(版本号)]

准备阿里云仓库

  • 到阿里云官网进行登录

  • 进入控制台

  • 在控制台中搜索容器镜像服务 acr并打开

  • 选择实例列表,选择个人实例

  • 点击镜像仓库,如果没有咋会提示创建 命名空间 跟 仓库

  • 点击镜像仓库中的仓库名称 ,进入仓库页面就会有操作的相关提示,可以参考其中的命令进行提交

提交到阿里云仓库

  • 登录

  • 使用"docker tag"确认镜像即将推送的仓库地址跟版本号

docker tag [镜像ID] [仓库地址]:[版本号]

  • 使用 "docker push" 命令将该镜像推送至远程

docker push [仓库地址]:[版本号]

  • 在阿里云仓库查看

拉取(下载)镜像

docker pull [仓库地址]:[镜像版本号]

私有仓库提交/拉取镜像

搭建私有仓库

查询仓库镜像
docker search registry --limit 5 下载仓库镜像
docker pull registry 运行私有库的镜像registry
docker run -d -p 5000:5000 -v /data/dokcer/registry/:/tmp/registry --name=itmahy-registry --privileged=true registry

推送到私有库

  • 使用curl 验证私有库有什么镜像 curl -XGET http://ip地址:端口/v2/_catalog

  • 使用 docker tag修改镜像名称 docker tag 镜像:Tag Host:Port/Repository:Tag

  • 配置支持 http 推送镜像,docker默认不允许http方式推送镜像

vim /etc/docker/daemon.json
# 在文件中添加: "insecure-registries": ["192.168.137.11:5000"] 
# 文件中完整的内容是:
{
  "registry-mirrors": ["https://ea8u3raz.mirror.aliyuncs.com"],
   "insecure-registries": ["192.168.137.11:5000"] 
}

# 上面的步骤执行完成之后执重启docker
systemctl daemon-reload
systemctl restart docker
  • 使用docker push命令推送到私有库 docker push 镜像名称:TAG

  • curl查看是否上传成功

拉取私有仓库上的镜像

docker pull 镜像名称:TAG


评论