我刚刚在他们的网页上安装了Docker-Toolbox

我从Docker快速入门终端开始,如下所示

                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ o           __/
             \    \         __/
              \____\_______/


docker is configured to use the default machine with IP 192.168.99.100
For help getting started, check out the docs at https://docs.docker.com

bash-3.2$ 

但当我尝试执行docker拉hello-world时,这是我看到的

bash-3.2$ docker run hello-world
Unable to find image 'hello-world:latest' locally
Pulling repository docker.io/library/hello-world
Network timed out while trying to connect to https://index.docker.io/v1/repositories/library/hello-world/images. You may want to check your internet connection or if you are behind a proxy.
bash-3.2$ 

怎么了?


当前回答

我有同样的问题与boot2docker和修复它重新启动它:

boot2docker restart

其他回答

在Windows 7上,如果你认为你落后于代理

Logon to default machine $ docker-machine ssh default Update profile to update proxy settings docker@default:~$ sudo vi /var/lib/boot2docker/profile Append from the below as appropriate # replace with your office's proxy environment export"HTTP_PROXY=http://PROXY:PORT" export"HTTPS_PROXY=http://PROXY:PORT" # you can add more no_proxy with your environment. export"NO_PROXY=192.168.99.*,*.local,169.254/16,*.example.com,192.168.59.*" Exit docker@default:~$ exit Restart docker machine docker-machine restart default Update environment settings eval $(docker-machine env default)

以上步骤略有调整,但请参见故障排除指南:https://docs.docker.com/toolbox/faqs/troubleshoot/#/update-varlibboot2dockerprofile-on-the-docker-machine

我今天在使用1.10.1时遇到了这个问题,现有的解决方案都不起作用。我试着重新启动,升级,重新生成证书…

我注意到我在机器上创建了很多网络。去除后用:

docker network ls | grep bridge | awk '{print $1}' | xargs -n1 docker network rm

DNS又开始工作了。

注意:您可以忽略有关预定义网络的错误

我昨天遇到了这个完全相同的问题,没有一个“流行”的答案(比如将DNS修复到8.8.8.8)对我有效。我最终偶然发现了这个链接,这就成功了……https://github.com/docker/for-win/issues/16

在Docker for Windows, Windows 10和Hyper-V之间,在虚拟网络适配器创建过程中似乎有一个问题。具体来说,您可能最终会得到两个“vEthernet (DockerNAT)”网络适配器。使用Get-NetAdapter“vEthernet (DockerNAT)”检查(在一个升高的PowerShell控制台)。如果结果显示了多个适配器,您可以禁用并重命名它:

$vmNetAdapter = Get-VMNetworkAdapter -ManagementOS -SwitchName DockerNAT
Get-NetAdapter "vEthernet (DockerNAT)" | ? { $_.DeviceID -ne $vmNetAdapter.DeviceID } | Disable-NetAdapter -Confirm:$False -PassThru | Rename-NetAdapter -NewName "OLD"

然后打开Device Manager并删除禁用的适配器(出于某种原因,可以从这里执行,但不能从Network and Sharing Center适配器视图执行)。

sudo service docker stop
sudo service docker start

对我有用。

不知何故,sudo服务docker重启没有工作

(RHEL7)

在我的情况下,安装docker在Alpine Linux我得到的错误:

试图连接到https://index.docker.io/v1/repositories/library/........时,网络超时

使用脚本: https://github.com/docker/docker/blob/master/contrib/download-frozen-image-v2.sh

的工作原理。它使用curl下载图像,然后告诉你如何解tar和“docker加载”它。

我在8.8.8.8尝试了上面的静态DNS方法和禁用ipv6(我不理解代理的事情),没有一个对我有用。

编辑9/8/2016:

我最初使用dropbear而不是openssh。用openssh重新安装Alpine修复了这个问题。

下一个问题是“ApplyLayer退出状态1 stdout: stderr: chmod /bin/mount: permission denied”错误。

从(nixaid.com/grsec-in-docker/):

为了构建Docker映像,我必须禁用以下grsec 保护。修改“/etc/sysctl.d/grsec.conf”文件如下: kernel.grsecurity。Chroot_deny_chmod = 0 kernel.grsecurity。Chroot_deny_mknod = 0 kernel.grsecurity。chroot_caps = 0 #与systemd包/CAP_SETFCAP相关

但在alpine的案例中

/ etc / sysctl。d / 00-alpine上。

重新启动