我注意到Docker文档正在逐步转向systemd初始化方法,因此也就是配置。我有点不确定你是如何添加" insecure-registry"使用systemd配置方法时,Docker的条目。
在使用Docker 1.6.1版本的同时,通过添加到文件中,我能够添加多个不安全的注册表项:
/etc/sysconfig/docker
如下所示:
INSECURE_REGISTRY='--insecure-registry myregistry.companyx.com:5010 --insecure-registry myregistry.companyx.com:5011'
并使用以下命令重新启动Docker:
sudo service docker restart
使用Docker 1.8.2我一直在寻找如何在" systemd"时尚。我最接近任何文档的是以下2页:
https://docs.docker.com/articles/systemd/
https://coreos.com/os/docs/latest/registry-authentication.html
以上两点都建议我需要将文件添加到名为:
的目录中/etc/systemd/system/docker.service.d
这些页面中的第二个建议使用名为:
的文件/etc/systemd/system/docker.service.d/50-insecure-registry.conf
它还谈到" #cloud-config write_files: - path:"我根本没有跟进。
我忽略了我不理解的东西并创建了一个名为:
的文件/etc/systemd/system/docker.service.d/50-insecure-registry.conf
包含以下内容:
[Service]
Environment='DOCKER_OPTS=--insecure-registry="myregistry.companyx.com:5010"'
并使用以下命令重新启动docker:
sudo systemctl restart docker
结果让我觉得是时候回家了。我想添加多个不安全的注册表项,但还没有想出如何做到这一点。此外,我对单一条目的成功充满信心还有很长的路要走。
STUFF added 2 days later
在页面的帮助下:
http://nknu.net/how-to-configure-docker-on-ubuntu-15-04/
我在使用放入目录中的文件配置Docker方面取得了一些进展:
/etc/systemd/system/docker.service.d
我失踪的是一个覆盖默认值的条目:
[Service]
ExecStart=/usr/bin/docker -d -H fd://
我是通过在文件中创建一个额外的drop来实现的,这个名为:
docker_systemd_workaround.conf
它包含:
[Service]
# workaround to include default options
ExecStart=
ExecStart=/usr/bin/docker -d -H fd:// $DOCKER_OPTS
这样,不再忽略设置DOCKER_OPTS的文件中另一个丢弃的内容。我不认为这是一个接近完整解决方案的东西,但它确实解决了我试图添加"不安全注册表"条目。
答案 0 :(得分:1)
扩展了我对可读性的评论
无法连接到远程不安全的存储库。无法在启动时将“insecure_repository”添加到docker选项。
在 Ubuntu 16.04 LTS上使用通过软件包管理器安装的docker
/etc/systemd/system/docker.service.d/insecure_repository.conf
应返回运行docker服务的详细信息。您可以在已加载
此文件将加载DOCKER_OPTS env变量。
在[Service]
Environment='DOCKER_OPTS=--insecure-registry="myregistryserver.mydomain.com:5000"'
添加文件内容:
/etc/systemd/system/docker.service.d/docker-systemd-workaround.conf
此文件将修改ExecStart以使用DOCKER_OPTS环境变量。
在[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H fd:// $DOCKER_OPTS
添加文件内容:
$sudo systemctl daemon-reload
$sudo service docker restart
$docker info
$systemctl status docker
应包含不安全注册管理机构 myregistryserver.mydomain.com:5000
<screen> xyz </screen> blah blah <screen> abc </screen>
应该在 Drop-In:标题下包含您的systemd配置(也称为drop-ins)。您还应该在 CGroup:标题下看到修改过的ExecStart。
答案 1 :(得分:0)
我遇到了类似的问题,经过多年的努力才发现这个blog.
基本上按照以下步骤操作:
sudo vi /etc/systemd/system/docker.service.d/docker.conf和 添加以下内容:
[Service]
#You need the below or you 'ExecStart=' or you will get and error 'Service has more than one ExecStart= setting, which is only allowed'
ExecStart=
ExecStart=/usr/bin/docker daemon -H fd://
ExecStart=/usr/bin/docker daemon -H fd:// --insecure-registry youregistry.mydomain.com:5000
最后: