docker registry with --insecure-registry and docker 1.5



我对docker 1.5有问题。

所以,我在myregistry:5000上运行了一个私人注册中心。我可以推动&从其他位置(debian7&docker1.4)拉:

DOCKER_OPTS="--insecure-registry myregistry:5000"

在/etc/default/doker 中

现在,我有了一个新的系统,docker 1.5和debian 8,它已经不起作用了。我尝试了所有的可能性,比如--insecure-registry=myregistry:5000--insecure-registry http://myregistry:5000

有线索吗?

(注意:如果我停止docker并启动docker -d --insecure-registry myregistry:5000,效果会很好)

如果它能帮助任何人,我认为问题不是来自Docker(我试图更新注册表,但没有成功),而是来自systemd启动命令。

所以,这不是一个干净的解决方案,但它仍然比在屏幕上启动docker更干净。

我修改/lib/systemd/system/docker.service并更改ExecStart行:

ExecStart=/usr/bin/docker --insecure-registry myregistry:5000 -d -H fd://

然后,systemctl daemon-reload systemctl restart docker

就是这样。它有效。我可以拉&推到我遥远的私人登记处。

我在Debian 9Docker Se 18.06.1-ce上遇到了同样的问题。我收到一条错误消息:

使用默认标记:最新
来自守护程序的错误响应:Gethttps://mydocker-hub:5000/v2/:http:服务器向HTTPS客户端提供了HTTP响应

你可以用不同的方法解决这个问题。

  1. 您可以创建(或修改)/etc/docker/daemon.json文件,并在其中添加以下字符串:

    { "insecure-registries": ["yourdocker-hub:5000"] }
    

    重新启动docker服务:service docker restart

  2. 您可以修改/etc/default/docker和编辑DOCKER_OPTS选项

    DOCKER_OPTS='--insecure-registry yourdocker-hub:5000'
    

    重启docker服务:service docker restart

  3. 此外,您还可以修改文件/lib/systemd/system/docker.service,并将--insecure-registry yourdocker-hub:5000添加到服务的命令行

    [Service]        
    ExecStart=/usr/bin/dockerd -H fd:// --insecure-registry yourdocker-hub:5000
    

    现在您需要重新加载systemd管理器配置,请运行:systemctl daemon-reload
    重新启动docker服务:service docker restart

  4. 您可以停止docker服务,然后使用选项手动启动它。

    service docker stop
    docker -d yourdocker-hub:5000
    

如果出现错误,请参阅/var/log/syslog文件。

我在Ubuntu Utopic 14.10上使用Docker 1.5,并在5000端口上使用自己的Docker Registry服务器。一切都很好。我的/etc/default/docker文件中有一些附加选项,可能对您的情况没有意义。看看本地注册表是如何启用的:

DOCKER_OPTS="--debug --log-level="debug" --dns 172.17.42.1 --insecure-registry 172.16.99.67:5000"

配置更改后重新启动计算机。

最新更新