[{"data":1,"prerenderedAt":169},["ShallowReactive",2],{"content:\u002Fposts\u002Fdocker-private-cert":3,"surround:\u002Fposts\u002Fdocker-private-cert":158},{"id":4,"title":5,"body":6,"categories":132,"date":134,"description":135,"draft":136,"extension":137,"image":138,"meta":139,"navigation":141,"path":142,"permalink":138,"pinned":136,"published":138,"readingTime":143,"recommend":138,"references":138,"seo":148,"sitemap":149,"stem":150,"tags":151,"type":155,"updated":156,"__hash__":157},"content\u002Fposts\u002Fposts\u002Fdocker-private-cert.md","Docker 配置私服自签名证书信任",{"type":7,"value":8,"toc":126},"minimark",[9,19,31,42,47,57,62,68,72,75,81,88],[10,11,15],"alert",{"type":12,"icon":13,"title":14},"info","tabler:robot","AI 迁移提示",[16,17,18],"p",{},"本文由 AI 协助从旧站迁移，尚未完成逐篇人工审校；内容如有疏漏，将在复核后修订。",[16,20,21,22,26,27,30],{},"在内网部署私有镜像仓库（如 Harbor）时，通常使用自签名证书。客户端需要手动信任该证书，否则 ",[23,24,25],"code",{"code":25},"docker push"," \u002F ",[23,28,29],{"code":29},"docker pull"," 会报证书验证失败。",[32,33,34],"blockquote",{},[16,35,36,37],{},"如果你使用 Harbor 作为私服，参见 ",[38,39,41],"a",{"href":40},"\u002Fposts\u002Fharbor-install","Harbor 私有镜像仓库安装指南",[43,44,46],"h2",{"id":45},"linux","Linux",[48,49,55],"pre",{"className":50,"code":52,"language":53,"meta":54},[51],"language-bash","# 1. 获取 Harbor 服务器的证书\nopenssl s_client -connect harbor.example.com:443 -showcerts \u003C\u002Fdev\u002Fnull 2>\u002Fdev\u002Fnull \\\n  | openssl x509 -outform PEM > harbor-cert.pem\n\n# 2. 创建 Docker 证书目录\nsudo mkdir -p \u002Fetc\u002Fdocker\u002Fcerts.d\u002Fharbor.example.com\n\n# 3. 复制证书到 Docker 信任目录\nsudo cp harbor-cert.pem \u002Fetc\u002Fdocker\u002Fcerts.d\u002Fharbor.example.com\u002Fca.crt\n\n# 4. 同时添加到系统 CA 证书（推荐）\nsudo cp harbor-cert.pem \u002Fusr\u002Flocal\u002Fshare\u002Fca-certificates\u002Fharbor.example.com.crt\nsudo update-ca-certificates\n","bash","",[23,56,52],{"__ignoreMap":54},[10,58,59],{"type":12},[16,60,61],{},"重启 Docker 会短暂停止所有正在运行的容器，请在维护窗口内操作。",[48,63,66],{"className":64,"code":65,"language":53,"meta":54},[51],"# 5. 重启 Docker 服务\nsudo systemctl restart docker\n",[23,67,65],{"__ignoreMap":54},[43,69,71],{"id":70},"windows","Windows",[16,73,74],{},"在 Git Bash 中执行以下命令获取证书：",[48,76,79],{"className":77,"code":78,"language":53,"meta":54},[51],"echo | openssl s_client -connect harbor.example.com:443 -servername harbor.example.com 2>\u002Fdev\u002Fnull \\\n  | openssl x509 > harbor-ca.crt\n",[23,80,78],{"__ignoreMap":54},[16,82,83,84,87],{},"然后将 ",[23,85,86],{"code":86},"harbor-ca.crt"," 安装到系统受信任的根证书：",[89,90,91,97,104,111,117,123],"ol",{},[92,93,94,95],"li",{},"双击 ",[23,96,86],{"code":86},[92,98,99,100],{},"点击 ",[101,102,103],"strong",{},"安装证书...",[92,105,106,107,110],{},"选择 ",[101,108,109],{},"本地计算机"," → 下一步",[92,112,106,113,116],{},[101,114,115],{},"将所有证书放入下列存储"," → 浏览",[92,118,106,119,122],{},[101,120,121],{},"受信任的根证书颁发机构"," → 确定 → 下一步 → 完成",[92,124,125],{},"重启 Docker Desktop",{"title":54,"searchDepth":127,"depth":127,"links":128},4,[129,131],{"id":45,"depth":130,"text":46},2,{"id":70,"depth":130,"text":71},[133],"容器","2025-09-21 14:27:16","介绍如何在 Linux 和 Windows 客户端上配置 Docker 信任私有镜像仓库的自签名 SSL 证书，解决拉取推送时的证书验证失败问题。",false,"md",null,{"slots":140},{},true,"\u002Fposts\u002Fdocker-private-cert",{"text":144,"minutes":145,"time":146,"words":147},"2 min read",1.595,95700,319,{"title":5,"description":135},{"loc":142},"posts\u002Fposts\u002Fdocker-private-cert",[152,153,154],"Docker","Harbor","SSL","tech","2026-06-27 14:27:16","YvkUagEYZ-hcn2pqZtL_3kkCkuG-_Iw4AyZiIK8h_w0",[159,164],{"title":160,"path":161,"stem":162,"date":163,"type":155,"children":-1},"Chrome硬件加速功能开启与关闭","\u002Fposts\u002Fchrome-hardware-acceleration","posts\u002Fposts\u002Fchrome-hardware-acceleration","2025-03-31 10:07:47",{"title":165,"path":166,"stem":167,"date":168,"type":155,"children":-1},"Debian 13 稳定版安装指南及系统配置","\u002Fposts\u002Fdebian-install-config","posts\u002Fposts\u002Fdebian-install-config","2025-10-08 10:14:30",1788712226228]