Docker快速入门terminal是做什么的?

我刚刚开始使用Docker。 我能够运行我的服务器,并在他们之间进行通信。

我不明白的是:为什么我需要运行Docker命令,如$ docker run somerepo/image从Docker Quickstart Terminal打开的窗口$ docker run somerepo/image 。 从“常规”terminal窗口运行它将返回$ docker run dockerinaction/hello_world docker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?. See 'docker run --help'. $ docker run dockerinaction/hello_world docker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?. See 'docker run --help'.

我知道在OS X和Windows上,Docker需要用Linux 2.6(在我的情况下)启动一个虚拟机,并且所有容器都在该虚拟机中运行。

我虽然dockerCLI是连接到一个docker deamon在VM内运行 – 然后我不明白快速入门terminal会发生什么。

我不明白快速入门terminal会发生什么。

您可以使用由docker-machine env提供的常规terminal,并执行类似于osx/mpkg/quickstart.app/Contents/Resources/Scripts/start.sh

 dockerm-machine start dev eval "$(docker-machine env dev)" 

(用你的docker机器名replace' dev ',默认情况下它被命名为…“ default ”)

一旦设置了Docker客户端的这些环境variables,您可以直接从您的shell执行docker命令。
快速启动terminal会为您设置相同的variables。

您可以通过观看terminal输出来查看它的function。 在我的情况下,它运行bash –login'/ Applications / Docker / Docker Quickstart Terminal.app/Contents/Resources/Scripts/start.sh'尝试启动虚拟机。 一旦运行,它使用相当于eval“$(docker-machine env default)”来设置一些环境variables,以便terminal准备好访问Docker虚拟机。

如果您需要更多的信息,请查看脚本start.sh。