我试图说服我的管理层允许在组织内使用 Docker,但他们担心有人可能会制作图像并将其推送到他们的私人存储库。
我们是否可以允许使用 Docker、允许提取图像,但禁用 Docker 登录和 Docker 推送?
答案1
这Docker 注册表使用 HTTP API。docker push
使用PUT
、PUSH
和PATCH
HTTP 方法。要允许docker pull
和阻止,docker push
需要使用检查 HTTP 请求的防火墙解决方案。
但即使docker push
被防火墙阻止,仍然可以使用docker save
创建本地图像档案,然后可以将其保存在 USB 记忆棒上或通过电子邮件等方式传输出公司网络。
为了获得一定程度的安全性,可以考虑阻止对docker.io
注册表的访问以防止意外推送命令,运行私有注册表并仅使用私有基础映像。
在 Linux 上你可以进行如下配置:
BLOCK_REGISTRY='--block-registry=all'
ADD_REGISTRY='--add-registry=registry.access.redhat.com'
然而这些设置似乎还没有实现适用于 Windows 的 Docker。