在OSX的多个Terminal选项卡中使用docker / docker-machine

我有一个选项卡的docker工人,但开始使用它的东西。 我打开了一个新的选项卡,试图运行docker build但得到这个错误:

 Cannot connect to the Docker daemon. Is the docker daemon running on this host? 

运行docker-machine env default给了这个错误:

 Error checking TLS connection: Host is not running 

然后我运行docker-machine start default得到这个(它永远挂起):

 Starting "default"... (default) Waiting for an IP... 

当我closures了我使用docker的原始选项卡后,我再次运行docker-machine start default ,得到:

 Starting "default"... Machine "default" is already running. 

现在一切正常。

如何让docker命令在多个Terminal选项卡中工作?

在OS X上(使用Core2Duo),您通常应该使用Docker QuickStart Terminal.app 。 它为你做命令

 eval $(docker-machine env default) 

更确切地说,它确实

 bash -c "clear && DOCKER_HOST=tcp://192.168.99.100:2376 \ DOCKER_CERT_PATH=/Users/metzger9/.docker/machine/machines/de‌​fault \ DOCKER_TLS_VERIFY=1 /bin/bash" 

您可以使用注销会话的CTRL-D来查看它,然后使用上箭头查找最后一个命令。

最好的解决办法是logging结果

 docker-machine env default 

在你的.bash_profile 。 下一次你打开一个OS Xterminal,你将有

 env 

使docker运行所需的variables(几乎和本地一样)

在你想使用Docker的每个terminal中执行这个命令。

 eval "$(docker-machine env default)"