我的Docker服务已启动并正在运行.但是当试图通过使用sudo运行Docker时,例如:
12:40:26/~ $sudo docker pull fluxcapacitor/pipeline
Using default tag: latest
我有以下错误:
Warning: Failed to get default registry endpoint from daemon (Cannot connect to
the Docker daemon. Is the docker daemon running on this host?). Using system
default: https://index.docker.io/v1/
Cannot connect to the Docker daemon. Is the docker daemon running on this host?
请注意,我已经按照Mac OS X sudo docker Cannot connect to the Docker daemon. Is the docker daemon running on this host?的答案进行了操作
如下:
docker-machine启动默认值
12:40:36/~ $docker-machine start default
Starting "default"...
Machine "default" is already running.
码头工人
12:41:20/~ $docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
那么还有什么需要做的呢?
这是:
$docker --version
Docker version 1.11.2,build b9f10c9
在El Capitan.
docker-machine env默认输出
$eval "$(docker-machine env default)"
$docker-machine env default
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="/Users/macuser/.docker/machine/machines/default"
export DOCKER_MACHINE_NAME="default"
最佳答案
以下命令导出后续docker命令使用的一些环境变量:
eval "$(docker-machine env default)"
但是,如果使用sudo启动docker,则docker可执行文件无法访问导出的环境变量.您可以通过将-E标志传递给sudo来实现它,例如:
sudo -E docker pull fluxcapacitor/pipeline
但更容易的选择是使用没有root的docker,如:
docker pull fluxcapacitor/pipeline