docker故障排查
代理服务器设置
代理服务器可以在启动并运行后阻止与Web应用程序的连接。如果您位于代理服务器后面,请使用以下ENV
命令将以下行添加到Dockerfile中,以指定代理服务器的主机和端口:
# Set proxy server, replace host:port with values for your servers
ENV http_proxy host:port
ENV https_proxy host:port
DNS设置
DNS配置错误可能会产生问题pip
。您需要设置自己的DNS服务器地址才能pip
正常工作。您可能想要更改Docker守护程序的DNS设置。您可以/etc/docker/daemon.json
使用dns
密钥编辑(或创建)配置文件,如下所示:
{
"dns": ["your_dns_address", "8.8.8.8"]
}
在上面的示例中,列表的第一个元素是DNS服务器的地址。第二项是Google的DNS,可在第一项无法使用时使用。
在继续之前,请保存daemon.json
并重新启动docker服务。
sudo service docker restart
修复后,重试运行该build
命令。
今早开机,发现集群挂了:
$ docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS 默认- VirtualBox的运行TCP:// 192.168.99.101:2376 未知无法查询搬运工版本:获取的https:// 192.168.99.101:2376 / V1.15 /版本:X509:证书有效期为 192.168.99.100,不192.168。 99.101 |
$ docker-machine stop 停止“默认” ...... 机器“默认”已停止。 |
|
$ docker-machine启动 开始“默认” ...... (默认)检查网络以在需要时重新创建... (默认)等待了一个IP ... 机器“默认”已启动。 等待的 SSH可用... 检测供应商...... 已启动的计算机可能具有新的IP地址 您可能需要重新运行`docker-machine env`命令。 |
|
$ docker-machine env 错误检查TLS连接:错误检查和/或再生的证书:有一个错误验证证书的主机“192.168.99.101:2376”:X509:证书有效期为 192.168.99.100,不192.168.99.101 您可以尝试使用“docker-machine regenerate-certs [name]”重新生成它们。 请注意,这将触发Docker守护程序重启,这将停止运行容器。 |
重新生成我的证书:
$ docker-machine regenerate-certs 重新生成TLS机器证书?警告:这是不可逆转的。( y / n ):y 重新生成TLS证书 等待的 SSH可用... 检测供应商...... 将证书复制到本地计算机目录... 将证书复制到远程计算机...... 在远程守护程序上设置Docker配置... |
$ docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS 默认- VirtualBox的运行TCP:// 192.168.99.101:2376 v1.9.0 |