Docker 信任自签名 CA 证书
Docker 使用私有 CA(例如 step-ca)签发的 HTTPS 证书时,需要区分 Docker Engine 拉取镜像 和 容器内应用访问 HTTPS 两种场景。它们的证书信任库不一定相同。 一、Docker Engine 信任私有 CA 适用于 docker login、docker pull、docker push 访问私有镜像仓库。 仅信任指定 Registry(推荐) 假设 Registry 地址为 registry.example.com:5000: sudo mkdir -p /etc/docker/certs.d/registry.example.com:5000 sudo cp root_ca.crt /etc/docker/certs.d/registry.example.com:5000/ca.crt 目录名称应与实际访问的 Registry 主机名及端口一致;默认 HTTPS 443 端口通常可省略。ca.crt 应为 PEM 格式的 CA 证书,而不是私钥。 验证: docker login registry.example.com:5000 Ubuntu / Debian 宿主机全局信任 sudo cp root_ca.crt /usr/local/share/ca-certificates/my-root-ca.crt sudo update-ca-certificates Linux 上 Docker 通常会使用宿主机的系统 CA 信任库。通常不必重启 Docker;如果仍未生效,可检查 Docker 日志及证书配置,再决定是否重启(重启可能影响运行中的容器)。 ...