一、阿里云创建私有镜像仓库

1、登录阿里云官网

首先是登录阿里云官网,这个就不用多说了

2、找到容器镜像服务

点击右上角的控制台然后找到容器镜像服务

docker 推送镜像到仓库 docker镜像上传到私有仓库_阿里云


docker 推送镜像到仓库 docker镜像上传到私有仓库_上传_02

3、找到个人实例

选择容器镜像服务以后就会跳转到实例列表,这个时候注意记得把上面的归属地切换成你购买服务器地区,这里有的时候会有bug,默认不是你购买的服务器的所属区域。然后再点击个人实例进入实例详情页。

docker 推送镜像到仓库 docker镜像上传到私有仓库_上传_03

4、命名空间-镜像仓库-访问凭证

进入个人实例详情以后先进入命名空间,创建一个空间,然后再点击镜像仓库创建一个镜像仓库以便后期推送镜像到仓库里。镜像仓库是必须放在命名空间下的,目前阿里云运行个人创建3个命名空间。最后就是点击访问凭证,设置一个密码然后以便上传的时候校验。

docker 推送镜像到仓库 docker镜像上传到私有仓库_阿里云_04

docker 推送镜像到仓库 docker镜像上传到私有仓库_阿里云镜像仓库_05

docker 推送镜像到仓库 docker镜像上传到私有仓库_私有镜像仓库_06

二、上传和下载命令

官网有对应的上传和拉取的命令,我下面会截图告知具体位置,下面还会针对这些命令进行讲解以及实践,不明白命令的可以继续往下看。

1、在个人实例页面选择镜像仓库,然后点击管理

docker 推送镜像到仓库 docker镜像上传到私有仓库_阿里云镜像仓库_07


2、在弹出的基本信息里有操作指南,里面有具体的步骤。有不明白的可以看下面本人的实践。

docker 推送镜像到仓库 docker镜像上传到私有仓库_上传_08

三、上传和下载实践

1、登录你的阿里云镜像仓库

执行命令:$ docker login --username=阿里云登录用户名 registry.cn-shanghai.aliyuncs.com,然后输入密码,密码就是你上面设置的访问凭证,当出现Login Succeeded就代表登录成功了。

docker 推送镜像到仓库 docker镜像上传到私有仓库_私有镜像仓库_09

2、给你的想上传的镜像打个标签

执行命令:$ docker tag [ImageId] registry.cn-shanghai.aliyuncs.com/命名空间/镜像仓库:[镜像版本号]
我执行的命令就是:$ docker tag [ImageId] registry.cn-shanghai.aliyuncs.com/public_yl/mysql:[镜像版本号]。

这里的ImageId可以直接用镜像的名称代替,镜像版本号你可以随便定义。还有一个需要注意的是如果你远程并没有建立镜像仓库,那么执行这个命令的时候也会在远程给你建立对应的仓库。例如我的命令中public_yl就是我创建的命名空间,mysql就是我针对mysql镜像创建的镜像仓库,如果我远程没有创建mysql这个仓库,那么就会自动帮我创建。

docker 推送镜像到仓库 docker镜像上传到私有仓库_私有镜像仓库_10

3、创建完成以后就会发现出现你创建的镜像

docker 推送镜像到仓库 docker镜像上传到私有仓库_docker 推送镜像到仓库_11

4、推送至阿里云

执行命令:$ docker push registry.cn-shanghai.aliyuncs.com/public_yl/mysql:[镜像版本号]

docker 推送镜像到仓库 docker镜像上传到私有仓库_上传_12

5、阿里云查看镜像是否成功

登录阿里云以后点击镜像仓库,找到你建立的仓库然后点击仓库名进入仓库里,然后选择镜像版本就能看到上传上去的镜像了。

docker 推送镜像到仓库 docker镜像上传到私有仓库_私有镜像仓库_13


docker 推送镜像到仓库 docker镜像上传到私有仓库_docker 推送镜像到仓库_14

6、下载自己上传的镜像

运行命令:$ docker pull registry.cn-shanghai.aliyuncs.com/public_yl/mysql:[镜像版本号] 我是先删除然后再从阿里云拉取,结果发现拉取成功。

docker 推送镜像到仓库 docker镜像上传到私有仓库_阿里云镜像仓库_15