@zhaikun
2017-05-04T11:07:59.000000Z
字数 1753
阅读 827
docker
[root@zzk ~]# uname -r
3.10.0-327.el7.x86_64
[root@zzk ~]#
rpm -Uvh http://dl.Fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum -y install docker-io
公有仓库的使用
如果您要在TAE以外的地方(如您的本地host)使用TAE公有仓库,在使用Docker环境时需要在Docker daemon启动参数中加上TAE的公有仓库的域名,如下:
--insecurity-registry=registry.aliyun.com
在镜像仓库的列表中获取官方镜像的地址(默认显示的是私有仓库域名),然后把域名换成registry.aliyun.com(公有仓库的域名)就可以在本地Docker环境直接使用了,对应关系如图:
私有仓库的镜像 公有仓库的镜像
私有仓库镜像 | 共有仓库镜像 |
---|---|
dhub.aliyun.com/open/centos-root:1.0.0 | registry.aliyun.com/open/centos-root:1.0.0 |
dhub.aliyun.com/open/ubuntu-root:1.0.0 | registry.aliyun.com/open/ubuntu-root:1.0.0 |
Docker daemon中加了上面提到的启动参数后,本地docker环境中就可以不用登录直接下载这些镜像,比如直接运行如下命令:
docker pull registry.aliyun.com/open/centos-root:1.0.0
注意事项
自定义的镜像只能通过私有镜像仓库域名访问,使用公有镜像仓库域名是访问不了的。
TAE提供的官方镜像,无论通过公有仓库域名还是私有仓库域名都可以访问到。
国内访问 Docker Hub 有时会遇到困难,此时可以配置镜像加速器。国内很多云服务商都提供了加速器服务,例如:
阿里云加速器
DaoCloud 加速器
灵雀云加速器
注册用户并且申请加速器,会获得如 https://jxus37ad.mirror.aliyuncs.com 这样的地址。我们需要将其配置给 Docker 引擎。
对于使用 systemd 的系统,用 systemctl enable docker 启用服务后,编辑 /etc/systemd/system/multi-user.target.wants/docker.service 文件,找到 ExecStart= 这一行,在这行最后添加加速器地址 --registry-mirror=<加速器地址>,如
ExecStart=/usr/bin/dockerd --registry-mirror=https://jxus37ad.mirror.aliyuncs.com
或者
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://a2d335f1.m.daocloud.io Copy
重新加载配置并且重新启动
$ systemctl daemon-reload
$ systemctl restart docker
Linux系统下配置完加速器需要检查是否生效,在命令行执行 ps -ef | grep dockerd,如果从结果中看到了配置的 --registry-mirror 参数说明配置成功。
[root@zzk ~]# ps -ef | grep docker
root 37199 1 0 14:34 ? 00:00:10 /usr/bin/docker-current daemon --exec-opt native.cgroupdriver=systemd --selinux-enabled --log-driver=journald --registry-mirror=https://jxus37ad.mirror.aliyuncs.com
root 37653 10785 0 15:26 pts/0 00:00:00 grep --color=auto docker
[root@zzk ~]#