介绍常用的镜像发布方式

发布到阿里云:

实际项目会使用阿里云企业版实例,且上传到阿里云相较于自行搭建 docker 仓库更为常见

镜像文件上传:

将镜像文件发布到阿里云进行保存,类似于将代码上传到 Git
主要步骤:

  1. 1. 登录阿里云找到容器镜像服务
  2. 2. 创建命名空间
  3. 3. 在刚才创建的命名空间中创建镜像仓库
  4. 4. 设置访问凭证密码
  5. 5. 执行镜像仓库页中的命令

image.png

image.png

image.png
image.png

镜像仓库创建完成后找到访问凭证,创建固定密码
image.png

创建固定密码后依次执行“镜像仓库 - 基本信息”中锦像推送命令即可
image.png
image.png

image.png
image.png

镜像文件下载:

对本地刚才上传到阿里云的镜像文件及其对应容器进行删除,重新按照“镜像仓库 - 基本信息”中的拉取锦像操作进行镜像文件下载
image.png

发布到私有仓库:

使用 Docker Registry 搭建私有仓库,类似与搭建 GitHub 上传代码

下载仓库镜像:

执行命令:docker pull registry
image.png

运行仓库镜像:

默认情况,仓库被创建在容器的 /var/lib/registry 目录下,通常会自行用容器卷映射方便于宿主机联调
执行命令:docker run -d -p 5000:5000 -v /zzyyuse/myregistry/:/tmp/registry —privileged=true registry
image.png

查看当前仓库中的镜像:

验证私服库上有什么镜像
操作命令: curl -XGET http://本地主机ip:5000/v2/_catalog
image.png

将目标镜像改名为仓库规范:

操作命令:docker tag 镜像:Tag Host:Port/Repository:Tag
image.png

取消 Http 限制:

docker registry 默认不允许使用 Http 方式推送镜像,需要对配置文件进行修改,对其添加 “insecure-registries“ 参数
旧版本 docker 修改配置文件不生效,需要重新启动 docker 并重新运行仓库镜像
修改配置文件命令:vim /etc/docker/daemon.json

  1. {
  2. "registry-mirrors": ["https://aa25jngu.mirror.aliyuncs.com"],
  3. "insecure-registries": ["本机IP:5000"]
  4. }

推送镜像:

操作命令: docker push 改名的镜像名称:版本号
image.png
image.png

下载镜像:

对本地刚才上传到私有仓库的镜像文件及其对应容器进行删除,对其重新进行下载
操作命令:docker pull 改名后的镜像名称:版本号
image.png