如何配置 docker snap 以接受私有注册证书?

如何配置 docker snap 以接受私有注册证书?

当以 snap 方式安装 docker 时,我无法告诉它接受私有注册表证书。它似乎至少考虑过证书的唯一一次是我把它放入

/etc/docker/certs.d/<my registry host and port>/ca.pem

在那种情况下,我得到了

Error response from daemon: open /etc/docker/certs.d/<my registry host and port>: permission denied

即使我授予该目录 777 权限,这仍然适用。我将证书放在该目录中的原因是 docker 的 snap 日志显示它会在那里查找证书。

答案1

我遇到了这个问题,经过一番研究,找到了解决方案。您需要:

sudo mkdir -p /var/snap/docker/certs.d/registryhost:port/
sudo cp your.crt /var/snap/docker/certs.d/registryhost:port/
sudo snap restart docker

然后通过以下方式登录到您的注册表:

docker login registryhost:port

您应该能够从注册表中推送和提取图像。如果这对您有用,请告诉我。谢谢!

答案2

在 Ubuntu 上正确的路径是/var/snap/docker/~current/etc/docker/certs.d

相关内容