我在使用 docker 时遇到了一个奇怪的问题。我们有一个公司代理并在 Windows Server 2016 上使用 docker。
我正在尝试从 dockerhub 中提取 docker 镜像。
最近开始面临这个问题。之前还好好的。
步骤
1) 设置 HTTP 和 HTTPS 代理
2)执行 docker pull hello-world:nanoserver
Error response from daemon: Get https://registry-1.docker.io/v2/: proxyconnect tcp: dial tcp: lookup http: no such host
知道这里出了什么问题吗?我有几台其他机器具有相同的设置并且工作正常。
更新1: 06/03/2019
我做了一些尝试和错误,发现 docker 版本是罪魁祸首。
我安装了 docker 17.06.2-ee-17、17.06.2-ee-16 并尝试拉取映像。效果很好。
所以现在的问题是最新 3 个版本的 docker ee for windows 有什么问题。即 17.06.2-ee-18,17.06.2-ee-19,17.06.2-ee-20 给了我这个错误。
我们遇到了完全相同的问题。
当我们使用代理服务器的完全限定版本时,它似乎可以在较新的版本中工作。
即
http://proxy-server.my-domain.net:8080
而不是http://proxy-server:8080
抱歉,我的答案是针对Linux(“来自守护进程的错误响应:获取https://registry-1.docker.io/v2/:Proxyconnecttcp:拨打tcp:lookup proxy.example.com :没有这样的主机")
首先使用此命令检查 docker 版本 ($docker -v)
输出:Docker 版本 19.03.10,构建 9424aeaee9(可以是任何版本)
检查您能否 ping 到 google ($ping google.com)
如果有效,则无需修复该文件(/etc/hosts 和 /etc/resolv.conf)
$sudo snap install docker
然后检查PATH环境变量
$回显$PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin ( 输出一定是这样的)
输出不包含 /snap/bin 路径。您可以使用以下命令定义
$export -n PATH=$PATH:/snap/bin
$echo $PATH(使用此命令检查)
现在登录 docker hub
$docker登录
登录成功后,可以从docker hub拉取任意镜像
$docker pull hello-world