如何为docker注册表允许多个'--insecure-registry'

时间:2015-10-16 12:05:05

标签: docker docker-registry

众所周知,我们可以在--insecure-registry配置文件中添加一个/etc/default/docker以允许不安全的注册表,如下所示:

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

我的问题是:它是否支持添加多个--insecure-registry,因为我们需要与多个注册管理机构进行通信?

4 个答案:

答案 0 :(得分:15)

您可以通过排列它们来指定多个不安全的注册表:

--insecure-registry IP1:PORT --insecure-registry IP2:PORT --insecure-registry IP3:PORT

来源:https://github.com/docker/docker/issues/9026

答案 1 :(得分:4)

Docker 17.xx +

  1. 编辑daemon.json文件,其默认位置在Linux上为/etc/docker/daemon.json或在Windows Server上为C:\ProgramData\docker\config\daemon.json

      

    如果daemon.json文件不存在,请创建它。

    {
          "insecure-registries": ["myregistry:5000", "anotherregistry:5000"]
    }
    
  2. 重新启动Docker以使更改生效。在Ubuntu中会是这样的:

    $ sudo systemctl daemon-reload
    $ sudo systemctl restart docker
    
  3. 在官方文档页面https://docs.docker.com/registry/insecure/

    中查找更多详细信息

答案 2 :(得分:0)

如果您在RHEL,CentOS,Fedora等上使用Docker

(您可以在Ubuntu中配置相同的文件,但它位于另一个位置)

您可以在docker服务中添加下一行 / etc / sysconfig / docker

INSECURE_REGISTRY='--insecure-registry IP1:PORT1 --insecure-registry IP2:PORT2'

保存文件 然后重新启动docker

$ systemctl restart docker

答案 3 :(得分:0)

更新/etc/containers/registries.conf 中的以下行

# Registries that do not use TLS when pulling images or uses self-signed
# certificates.
[registries.insecure]
registries = ['myregistry:5000','myregistry2:5000']

并重新启动服务

systemctl restart docker