如何确定docker容器是在远程docker-machine上运行还是在docker引擎中本地运行?

时间:2016-08-15 22:45:05

标签: docker docker-machine

为了将互联网带宽的担忧推向云计算机,我在远程docker-machine上运行docker容器。当你网速很慢时,这种设置非常方便。我的问题是我不知道如何轻松确定容器的主机。

这是我决定它的方式:

运行此docker run -d -p 8000:80 nginx并访问 - > localhost:8000;如果它返回一个nginx默认页面,那么我知道它在本地运行docker容器。

如果我用docker-machine ip替换localhost并获取nginx页面,那么我知道容器在远程系统上。

1 个答案:

答案 0 :(得分:1)

docker CLI是客户端/服务器架构的客户端的一半(dockerd或过去的版本docker daemon是另一半)。当您使用docker-machine时,它会更新包含$DOCKER_HOST的环境变量,告知docker连接到其他主机。默认设置是连接到本地主机上的套接字。 $DOCKER_HOST的值将覆盖该值,并且CLI标志docker -H ...将覆盖这两者。

让容器在意外主机上启动的最常见原因是您忘记设置/取消设置$DOCKER_HOST