ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
[TOC] ## 仓库介绍 仓库(Repository)是集中存放镜像的地方,仓库分为公开仓库和私有仓库两种形式。 最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载。 Docker Hub:https://hub.docker.com/ 在国内,阿里云和163也有提供公开仓库,用户也可以在本地网络内创建一个私有仓库。当用户创建了自己的镜像之后就可以使用push命令将它上传到公有或私有仓库,这样其他人只需要从仓库上pull下来就可以了。 <br> ### 阿里云仓库介绍 前面在介绍镜像时,提到过阿里云**镜像加速器**,阿里云同时也提供**docker仓库**,下面是阿里云容器镜像服务的介绍 >[info]容器镜像服务(Container Registry)提供安全的应用镜像托管能力,精确的镜像安全扫描功能,稳定的国内外镜像构建服务,便捷的镜像授权功能,方便用户进行镜像全生命周期管理。容器镜像服务简化了Registry的搭建运维工作,支持多地域的镜像托管,并联合容器服务等云产品,打造云上使用Docker的一体化体验。 这意味着,我们可以将自己的镜像发布到阿里云中。 <br> ### 案例:推送redis镜像到阿里云 1. 在阿里云上创建镜像仓库 我这里先创建了一个命名空间为`mt-gfc`,然后再这个命名空间下创建镜像仓库`myredis`![](https://box.kancloud.cn/9ab5c309a4392f9589cb4278b69346d8_1118x809.png) ![](https://box.kancloud.cn/b01451ecf56d80ecc1341c0a82621a60_1118x467.png) ![](https://box.kancloud.cn/5fd3161cc2ea065b2d661d8f6548ba80_1125x297.png) 创建后,获得公网地址:*registry.cn-hangzhou.aliyuncs.com/mt-gfc/myredis*,点击“管理”可以进入仓库管理页。 >[warning] 后面步骤中的打tag,push推送都要用到这个仓库地址。 2. 登录阿里云Docker Registry ``` root@ubuntu:/home/guanfuchang# docker login --username=[您当前阿里云用户名] registry.cn-hangzhou.aliyuncs.com Password: WARNING! Your password will be stored unencrypted in /root/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded ``` 登录成功后,会提示“Login Succeeded” 3. 给镜像打TAG 这里我将本地镜像redis:5.0 打成阿里云TAG 9.9 ``` root@ubuntu:/home/guanfuchang# docker images REPOSITORY TAG IMAGE ID CREATED SIZE redis 5.0 415381a6cb81 6 days ago 94.9MB rabbitmq latest e8261c2af9fe 2 weeks ago 125MB hello-world latest 4ab4c602aa5e 2 months ago 1.84kB root@ubuntu:/home/guanfuchang# docker tag redis:5.0 registry.cn-hangzhou.aliyuncs.com/mt-gfc/myredis:9.9 root@ubuntu:/home/guanfuchang# root@ubuntu:/home/guanfuchang# docker images REPOSITORY TAG IMAGE ID CREATED SIZE redis 5.0 415381a6cb81 6 days ago 94.9MB registry.cn-hangzhou.aliyuncs.com/mt-gfc/myredis 9.9 415381a6cb81 6 days ago 94.9MB rabbitmq latest e8261c2af9fe 2 weeks ago 125MB hello-world latest 4ab4c602aa5e 2 months ago 1.84kB ``` tag打包完成后,可以看到本地镜像中新增了*registry.cn-hangzhou.aliyuncs.com/mt-gfc/myredis:9.9* 4. 将镜像推送到Registry ``` root@ubuntu:/home/guanfuchang# docker push registry.cn-hangzhou.aliyuncs.com/mt-gfc/myredis:9.9 The push refers to repository [registry.cn-hangzhou.aliyuncs.com/mt-gfc/myredis] 3adc2ce40893: Pushed b05611c60854: Pushed 3eefbad2dc28: Pushed aa1a19279a9a: Pushed 197ffb073b01: Pushed 237472299760: Pushed 9.9: digest: sha256:93ce9120377effb33fc8ab25cc5fb6ab736982aa4524adb89324c031e47b33ac size: 1572 ``` ![](https://box.kancloud.cn/5a01038eb555c1bccd23c0d11cbbd77f_1119x382.png) <br> 到这里,我们已经成功将本地镜像上传到了阿里云仓库,假设我们在其他机器上,我们可以方便的将这个镜像下载下来 ``` root@ubuntu:/home/guanfuchang# docker pull registry.cn-hangzhou.aliyuncs.com/mt-gfc/myredis:9.9 9.9: Pulling from mt-gfc/myredis Digest: sha256:93ce9120377effb33fc8ab25cc5fb6ab736982aa4524adb89324c031e47b33ac Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/mt-gfc/myredis:9.9 root@ubuntu:/home/guanfuchang# ``` --- :-: ![](https://box.kancloud.cn/331f659e8e6cddb0d9f182e00e32803f_258x258.jpg) <span style="color: #993366;"><em>***<span style="text-decoration: underline;"><span style="text-decoration: underline;">微信扫一扫,关注&ldquo;python测试开发圈&rdquo;,了解更多测试教程!!</span></span>***</em></span>