CoreOS配置Docker镜像加速器
< 返回列表时间: 2018-05-17来源:OSCHINA
CoreOS下的Docker配置是通过flannel unit来实现的
通过命令可以看出配置文件的默认位置 systemctl cat docker # /run/systemd/system/docker.service [Unit] Requires=torcx.target After=torcx.target Description=Docker Application Container Engine Documentation=http://docs.docker.com After=containerd.service docker.socket network-online.target Wants=network-online.target Requires=containerd.service docker.socket [Service] EnvironmentFile=/run/metadata/torcx Type=notify EnvironmentFile=-/run/flannel/flannel_docker_opts.env Environment=DOCKER_SELINUX=--selinux-enabled=true /run/flannel/flannel_docker_opts.env
这个文件默认是没有的,所以我们创建对应目录和文件即可。
补充:如果docker run的时候报如下错误: Error response from daemon: error creating overlay mount to /var/lib/docker/overlay2/007018df729636dd7c3d22ea683d13b6f5f0657b7c2c9e0014c671id argument.
则需要修改/run/systemd/system/docker.service文件中的这一项
Environment=DOCKER_SELINUX=--selinux-enabled=false
然后
systemctl daemon-reload
systemctl restart docker
然后编辑文件内容如下: vi flannel_docker_opts.env DOCKER_OPTS="--registry-mirror=https://xxxxx.mirror.aliyuncs.com"
保存后,启动docker服务即可 systemctl daemon-reload systemctl restart docker
最后验证一下 ps aux |grep docker root 831 1.3 0.8 272276 32908 ? Ssl 16:55 0:00 /run/torcx/bin/dockerd --host=fd:// --containerd=/var/run/docker/libcontainerd/docker- containerd.sock --selinux-enabled=true --registry-mirror=https://xxxxx.mirror.aliyuncs.com
这样就成功了,很简单吧。
补充:
大家有没有发现docker.service配置文件的路径在/run/下,我一直觉得很奇怪/run/应该都是运行时,果然发现系统或服务重启后,docker.service中的配置经常会还原了。一直想解决的办法,经过尝试,可以通过如下方法处理: # 复制/run/里面的配置文件到/etc/下 cp /run/systemd/system/docker.service /etc/systemd/system/docker.service # 重新加载服务 systemctl daemon-reload # 重启服务 systemctl restart docker.service # 验证 systemctl cat docker.service

可以看到文件已经变更过来了。
热门排行