本文最后更新于 365 天前,其中的信息可能已经有所发展或是发生改变。
国内docker镜像都不能使用了,如果还想用docker来部署服务,没有镜像还怎么玩呢,可以通过阿里云容器镜像来进行中转。
前提:能访问外网的无服务或者能拉取docker官方的镜像。
过程是:拉取官方镜像->上传到阿里云容器镜像->从阿里云容器镜像来拉取
这个当然是个人用的,个人能用到的镜像毕竟有限,只要能用就好了。
开通网站:https://cr.console.aliyun.com/
1.选择个人版
开通之后要创建“仓库”然后再创建“命令空间”。
2:使用方法
1. 登录阿里云Docker Registry
$ docker login --username=h****@**.com registry.cn-hangzhou.aliyuncs.com
用于登录的用户名为阿里云账号全名,密码为开通服务时设置的密码。
您可以在访问凭证页面修改凭证密码。
2. 从Registry中拉取镜像
$ docker pull registry.cn-hangzhou.aliyuncs.com/**/***:[镜像版本号]
3. 将镜像推送到Registry
$ docker login --username=h****@**.com registry.cn-hangzhou.aliyuncs.com
$ docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/**/***:[镜像版本号]
$ docker push registry.cn-hangzhou.aliyuncs.com/**/***:[镜像版本号]
请根据实际镜像信息替换示例中的[ImageId]和[镜像版本号]参数。
4. 选择合适的镜像仓库地址
从ECS推送镜像时,可以选择使用镜像仓库内网地址。推送速度将得到提升并且将不会损耗您的公网流量。
如果您使用的机器位于VPC网络,请使用 registry-vpc.cn-hangzhou.aliyuncs.com 作为Registry的域名登录。
5. 示例
使用”docker tag”命令重命名镜像,并将它通过专有网络地址推送至Registry。
$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
registry.aliyuncs.com/acs/agent 0.7-dfb6816 37bb9c63c8b2 7 days ago 37.89 MB
$ docker tag 37bb9c63c8b2 registry-vpc.cn-hangzhou.aliyuncs.com/acs/agent:0.7-dfb6816
使用 “docker push” 命令将该镜像推送至远程。
$ docker push registry-vpc.cn-hangzhou.aliyuncs.com/acs/agent:0.7-dfb6816
拉取镜像命令。
docker pull registry.cn-hangzhou.aliyuncs.com/**/***:[镜像版本号]
通过docker images查看容器ID也就是ImageId
“镜像版本号”可以用镜像的名字替代,因为在镜像里面是通过这个来进行区分的。
仓库信息
镜像加速器,试了不能用。