x509:由未知权威签署的证书 – 与docker工人和github
docker build -t oreng/iojs .
INFO[0000] Get https://index.docker.io/v1/repositories/library/iojs/images: x509: certificate signed by unknown authority.
我的Dockerfile是
FROM iojs:latest RUN useradd -ms /bin/bash developer WORKDIR /home/developer USER developer
另外hub create
(使用https://github.com/github/hub )
Post https://api.github.com/user/repos: x509: certificate signed by unknown authority
正如crypto/x509/root_unix.go
所提到的,Go(这是Docker使用的)将检查CA证书
"/etc/ssl/certs/ca-certificates.crt", // Debian/Ubuntu/Gentoo etc. "/etc/pki/tls/certs/ca-bundle.crt", // Fedora/RHEL "/etc/ssl/ca-bundle.pem", // OpenSUSE "/etc/ssl/cert.pem", // OpenBSD "/usr/local/share/certs/ca-root-nss.crt", // FreeBSD/DragonFly "/etc/pki/tls/cacert.pem", // OpenELEC "/etc/certs/ca-certificates.crt", // Solaris 11.2+
确保这些文件是可用的,没有损坏。
CDN也可能存在零星的问题,如下所述 :
因为现在它工作:+1:。 它必须是一个亚马逊边缘isssue
最后一个线程还包括以下检查:
报告问题的用户要么没有这些文件,要么那些文件不包含
rapidssl
证书。
我们可以要求他们发送这些文件,并检查证书是否包含在内。
用户也可以试试这个:
openssl s_client -showcerts -verify 32 -connect index.docker.io:443
如果失败,证书丢失。
关于GitHub,请注意它目前正在遭受大规模的DDoS攻击,除了证书问题之外,还有其他的副作用。
在Ubuntu 16.04中,也应该与其他版本一起工作
在/ usr / local / share / ca-certificates下创build/复制.crt;
sudo cp installaiton/certificates/docker-registry.crt /usr/local/share/ca-certificates
然后运行
sudo update-ca-certificates
这将在“/etc/ssl/certs/ca-certificates.crt”下添加证书,然后重新启动docker
sudo systemctl daemon-reload sudo systemctl restart docker