记录一些常用的函数和瞎折腾的过程……

将docker镜像推送到阿里云容器镜像服务

现在在国内使用docker,想要从docker官方接取镜像,网络基本是阻断的,为了方便,你可以将常用的docker镜像推送到阿里云容器镜像服务(私有镜像仓库地址:https://cr.console.aliyun.com/cn-hangzhou/instances),方便自己使用。如果你有一台境外的服务器,你就可以先直接在docker官方拉取镜像,然后再推送到阿里云。推送到阿里云容器镜像服务具体步骤如下。

1. 登录阿里云 Container Registry

$ docker login --username=username@aliyun.com registry.cn-hangzhou.aliyuncs.com

之后会提示密码输入密码,输入访问凭证即可。

您可以在访问凭证页面(https://cr.console.aliyun.com/cn-hangzhou/instance/credentials)修改凭证密码。

2. 将镜像推送到Registry

先要修改tag:

$ docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/[仓库名]/[镜像名]:[镜像版本号]

再进行推送:

$ docker push registry.cn-hangzhou.aliyuncs.com/[仓库名]/[镜像名]:[镜像版本号]

注意:因为你是公网推送,所以必须用公网网址registry.cn-hangzhou.aliyuncs.com,而不能用VPC私有网址 registry-vpc.cn-hangzhou.aliyuncs.com 作为Registry的域名登录。

之后你就可以阿里云的从容器镜像服务Registry中拉取镜像了:

$ docker pull registry.cn-hangzhou.aliyuncs.com/[仓库名]/[镜像名]:[镜像版本号]

你国外的服务器上,因为重新打了tag,一个镜像可以会有多个tag,你可以从原服务器上删除多余的tag:

$ docker rmi registry.cn-hangzhou.aliyuncs.com/[仓库名]/[镜像名]:[镜像版本号]