Docker [阿里云] docker 镜像仓库的使用

阿东 · 2019年01月24日 · 1788 次阅读

背景

最近需要再阿里云上面搭建一套产品环境,因为产品的镜像仓库仍然在 gitlab 上面,导致在阿里云拉取和更新镜像时候全靠人品。看到阿里云上面有自己的仓库,尝试先拉取镜像到本地,再推送到阿里云的镜像仓库来解决镜像拉取缓慢的问题。

具体步骤

1. 在阿里云创建镜像仓库

我们先到容器镜像的控制台界面,先选择镜像仓库节点,建议选择和自己集群一个地区的节点
enter description here

2.如果是私有仓库需要先设置密码

enter description here

3.创建镜像仓库,通常一个项目对应一个镜像仓库

enter description here

4.选择类型,这里我们选择本地仓库

enter description here

5. 创建好仓库之后,在基本信息里面会有本地上传具体操作步骤和三种网络地址(公网,专有,内网)

enter description here

6. 根据页面提示,进行命令行操作,赋值命令修改即可

  • 先 docker login,此处的密码是之前第二步设定的密码。
  • 从自己的 gitlab 仓库拉取镜像到本地,docker pull your_gitlab_image_url
  • 打 tag docker tag imageid your_alibaba_registry_url:镜像版本号
  • push 到阿里云仓库 docker push your_alibaba_registry_url:镜像版本号

7. 因为用的是 k8s 集群,需要创建一个 secret,才能从私有仓库拉取镜像更新

  • 在同一个命名空间下面创建 secret key。 kubectl -n your_namespace create secret docker-registry your_secret_name --docker-server=your_registry_URL --docker-username=你的阿里云 id --docker-password=your_pwd
  • 在配置文件的 imagePullSecret 引用刚刚创建的 your_secret_name 即可

8.为了开发更快速的更新镜像到阿里云,把第 6 步的拉取镜像和推送用 python 做了自动化,简直不要太方便。

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册