群晖DSM918更新任何Docker镜像都提示x509: certificate signed by unknown authority的解决办法
我遇到了 Synology NAS 无法从本地 Docker 注册表中提取的问题:
docker: Error response from daemon: Get "https://redacted-local-hostname.net/v2/": x509: certificate has expired or is not yet valid
事实证明,我的 Synology 没有获取最新的 CA 根证书。我可以通过运行curl
curl -I https://alexnj.com
curl: (60) SSL certificate problem: certificate has expired
More details here: https://curl.haxx.se/docs/sslcerts.html
...
解决这个问题相当容易。以下命令以 PEM 格式从 curl.se 下载最新的根证书。我们将其移动到 Synology 保存 CA 证书捆绑包的位置,并覆盖它。我们创建源 CA 证书捆绑包的备份,并带有扩展名,以防万一您出于任何原因想要还原。.backup
cp /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt.backup
wget --no-check-certificate https://curl.se/ca/cacert.pem
mv cacert.pem /etc/ssl/certs/ca-certificates.crt
在此之后,相同的 curl 命令开始成功。但是,Docker 仍然会抛出相同的错误,这意味着它没有获取更新的根证书。溶液?让我们尝试重新启动 Synology Docker 守护程序:
synoservice --restart pkgctl-Docker
这解决了。如果您在使用 Synology 时遇到同样的问题,希望对您有所帮助!
参考资料:
https://alexnj.com/blog/updating-root-certificates-on-synology/
https://www.reddit.com/r/synology/comments/1ckc06u/cant_install_any_docker_image_getting_x509/
https://community.synology.com/enu/forum/1/post/136429
本文来自博客园,作者:晴云孤魂,转载请注明原文链接:https://www.cnblogs.com/cnhack/articles/18753227

浙公网安备 33010602011771号