限制推和拉到Docker受信任的注册表DTR

时间:2018-10-04 19:01:16

标签: docker docker-trusted-registry

在Docker EE中,是否有一种方法可以允许从特定机器向DTR进行推拉,同时保持Web UI访问与正常情况相同?

  • 用例是我们只想在Docker构建中强制使用DTR中的标准基础映像
  • 我们只想在启用了docker内容信任的标准docker构建机器上强制执行docker映像构建

  • 仅在CI服务器上允许以下命令:docker pull,docker build和docker push

有效地强制用户仅使用DTR中的基本图像。如果他们在其他位置构建映像,则无法将其推送,并且如果将其构建在我们的CI服务器上,则将确保他们只能从DTR而不是从其他位置提取基本映像,这也将确保他们在启用docker内容信任的情况下进行构建。

1 个答案:

答案 0 :(得分:1)

我遇到过类似的用例,下面我与大家分享我如何限制DTR上的拉,推动作范围:

  • 配置:有权在 注册表对象,并通过UCP Web UI加载Docker映像; 这导致向用户和/或团队提供特定的资助。

  • 配置:用户(人工和/或自动化机器人)可以从其中进行配置 通过在网络上添加特定的防火墙规则来执行注册表操作 级别由网络管理员负责。

  • 仅限制来自特定注册表的拉动操作, 在Docker主机文件系统上的以下路径更新文件, /var/lib/docker/daemon.json 添加DTR的网址:

      { 
        ... # some your custom Docker daemon configuration
        "registry-mirrors": ["https://your-registry-url"]
        ... # some other custom Docker daemon configuration
      }
    

最后,我得到:仅允许特定用户将Docker映像推送到DTR存储库中,并且只能从网络ACL列入白名单的位置推送

一些参考文献: