Docker:当试图运行docker run hello-world get - Forbidden

时间:2015-09-11 14:37:23

标签: windows-7 docker firewall

这是Windows 7机器,使用docker toolbox版本1.8.2安装的docker

我支持企业防火墙。

最初我甚至无法启动机器,所以我添加了两个新的环境变量:http_proxy,https_proxy,我能够启动默认机器

现在,当我跑步时,我得到:

XXXXXX@CCCCCCC MINGW64 ~  
$ docker run hello-world
An error occurred trying to connect: Post https://192.168.99.100:2376/v1.20/containers/create: Forbidden

请帮忙。

ps:stackoverflow上的其他问题与MAC有关,因此不适用于我,所以管理员请不要浪费我的时间来不必要地关闭这个项目。

5 个答案:

答案 0 :(得分:8)

从它的外观来看,docker命令行工具正在尝试使用您的代理服务器连接到VM内运行的Docker守护程序。

由于您的主机和Docker VM在同一网络中运行,因此您可能不需要代理服务器与Docker守护程序通信。尝试设置no_proxy环境变量,以指示Docker客户端不将代理服务器用于该特定地址:

export no_proxy=$(docker-machine ip <insert-vm-name-here>)

答案 1 :(得分:2)

因此,您可能对docker-machine的env变量存在问题,因为它无法在$ {HOME} /。docker

下找到正确的证书

尝试设置环境:

eval "$(docker-machine env default)

如果无效,请删除默认的泊坞机

docker-machine rm default

并重新创建它。

docker-machine create default

答案 2 :(得分:2)

对我来说,以下信息来自:https://docs.docker.com/docker-for-windows/解决了这个问题。

注意:有些用户报告在Docker for Windows稳定版上连接到Docker Hub时出现问题。当尝试运行从Docker Hub中提取尚未下载的图像的docker命令时,这会显示为错误,例如第一次运行docker run hello-world。如果遇到此问题,请重置DNS服务器以使用Google DNS固定地址:8.8.8.8。

答案 3 :(得分:1)

在我的情况下,我已经设定了 $> parallel ::: setup long-running-job teardown 在我的bash_profile中。注释它似乎解决了Docker的问题。

我尝试了@ helmbert的建议,但只是 export http_proxy="......." 对我不起作用。

注意:我在OsX 10.10上运行Docker Toolbox 1.12.1

答案 4 :(得分:0)

我使用代理,在执行以下操作后,当我遵循docker教程https://docs.docker.com/get-started/part4/时返回了错误:

docker-machine env <VM name>
eval $(docker-machine env <VM name>)
docker stack deploy -c docker-compose.yml <app name>

我使用以下方法解决了该问题:

docker-machine env --no-proxy <VM name>

代替:

docker-machine env <VM name>