【发布时间】:2017-05-04 02:28:35
【问题描述】:
我现在在使用 docker-machine 时遇到了问题,之前它工作正常,因为它在 Digital Ocean 中运行 docker 的机器上的命令超时。
我可以通过 SSH 连接到机器并且 Docker Swarm 和我们的系统似乎在机器上运行正常(docker node 命令似乎工作正常,例如 docker node ls)。
问题似乎出在 docker 机器上。我过去有类似的事情,可以通过增加超时时间来解决,但现在没有帮助。
错误似乎是由 net/http HTLS 握手超时引起的,输出来自:
docker-machine ls --timeout 30
显示:
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default - virtualbox Stopped Unknown
dev-m0 - digitalocean Error Unknown Get https://api.digitalocean.com/v2/droplets/42100174: net/http: TLS handshake timeout
dev-w1 - digitalocean Error Unknown Get https://api.digitalocean.com/v2/droplets/42115817: net/http: TLS handshake timeout
... repeated for all managers and workers.
我在我的 Mac 上运行 Docker CE 版本 17.05.0-ce-rc1-mac8 Edge,在 Digital Ocean 上的 Linux 机器上运行 17.03.0-ce(它似乎是最新可用的)。我已经在 Mac 上的 Edge 和 Stable 之间进行了切换,以查看是否是导致问题的原因,但没有帮助。
我已重新启动机器(停止和启动)。我没有重新生成证书,因为我可以毫无问题地使用 docker-machine ssh dev-m1 SSH 进入机器,所以证书对我来说似乎不是问题。我不想在本地运行任何容器。
过去一切正常,但最近停止了。
非常感谢任何帮助或建议。
谢谢, 阿什利。
【问题讨论】:
-
您是否也尝试过重新启动本地 Docker for Mac?它有时会失去与正确时间的同步,这可能是 TLS 不再工作的原因。
-
是的,谢谢,我已经多次重启Docker for Mac了。我什至重新启动了所有 docker 机器(即那些被控制的机器)。这可能与本地 Docker for Mac 相关,因为它影响了所有 docker 机器。我什至重新安装了 Docker for Mac,从 stable 移动到 edge,然后又回来了。
-
我认为这是一个 docker 问题。更新到更高版本后,问题就消失了。
标签: linux docker digital-ocean docker-machine docker-swarm