保护本地 docker 私有注册表

Securing local docker private registry

我正在尝试创建一个安全的私有 Docker 注册表,它只能在本地网络中运行并通过 IP 地址访问。 我已经阅读了很多关于这个问题的文章,但其中大部分都谈到需要有一个指向有效 public IP 地址(注册表所在的地址)的注册域名,然后为此获得证书域名。

我想知道是否有办法创建具有以下属性的 docker 注册表:

我如何获得此类注册表的有效证书?我知道不能单独为 IP 地址创建证书,但是我可以为已注册但不指向任何 public IP 的域生成证书吗(我读过一些关于 dns-01 挑战的内容,所以我相信这是可能的)然后使用该证书,前提是我将所述域映射到主机文件中服务器的本地 IP。

如果这不可能,什么是创造性的安全、本地、私有 docker 注册表的最佳替代方案?

使用 Nginx 保护您的 Docker 注册表。

相关文档在这里:

https://github.com/docker/distribution/tree/master/contrib/compose

如果将根 CA 添加到 /usr/local/share/ca-certificates 和 运行 update-ca-certificates 命令,则可以使用 self-signed 证书客户。