错误:联系公证服务器时出错:x509:证书由未知机构签署

错误:联系公证服务器时出错:x509:证书由未知机构签署

我很困惑docker和Notary如何协同工作。我无法签署图像

docker pull nginx:latest

得到

Error: error contacting notary server: x509: certificate signed by unknown authority

我遵循了以下步骤

git clone https://github.com/theupdateframework/notary
cd notary $ docker-compose build
docker-compose up -d
mkdir -p ~/.notary && cp cmd/notary/config.json cmd/notary/root-ca.crt ~/.notary

root-ca.crt 代表什么?如何检查?错误是否意味着客户端无法识别证书的颁发者并认为证书无效?

答案1

root-ca.crt文件用于在您的 Docker 客户端和 Notary 服务器之间建立信任。

您的问题是 Docker 客户端无法识别证书颁发者(公证服务器),并认为该证书无效。原因是它不是由受信任的证书颁发机构(系统上的默认信任)签名的

我们将告诉 Docker 信任公证服务器使用的根 CA 证书。首先,我们将创建 Docker 所需的目录:sudo mkdir -p /etc/docker/certs.d/your.notary.server.url:4443然后我们将其复制root-ca.crt到该目录sudo cp cmd/notary/root-ca.crt /etc/docker/certs.d/your.notary.server.url:4443/ca.crt并重新启动 Docker,它就可以工作了。

相关内容