来自守护进程的错误响应:Get http s://registry-1.docker.io/v2/: proxyconnect tcp: tls: first record does not look like a TLS handshake

Error response from daemon: Get http s://registry-1.docker.io/v2/: proxyconnect tcp: tls: first record does not look like a TLS handshake

我在 Windows 7 上安装了 virtual box 5.2。我按照 docker 快速入门指南安装了 docker。docker for windows

因为我的机器在公司代理之后,我设置

HTTP_PROXY=http://xxx:port
HTTPS_PROXY=https://xxx:port
NO_PROXT="192.168.99.1/24"

通过在创建 docker 机器时传递它,并在机器启动后进行导出。 'docker-machine create -d virtualbox --engine-env HTTP_PROXY="http://xxx:80" --engine-env HTTPS_PROXY="https://xxx:80" --engine-env NO_PROXY="192.168.99.1/24" default

docker run hello-world 显示以上错误。

这对我来说很有效。 按照给定的说明安装 docker 后 docker 快速启动并创建 docker 机器 将 C:\Users\anant.docker\machine\machines\default 中的 boot2docker.iso 替换为 C:\Program Files\Docker Toolbox

中的相同内容

重启docker

docker-machine restart

应用环境变量

docker-machine env
output : 

导出 DOCKER_TLS_VERIFY="1"

出口DOCKER_HOST="tcp://192.168.99.100:2376"

出口DOCKER_CERT_PATH="C:\Users\anant.docker\machine\machines\default"

出口DOCKER_MACHINE_NAME="default"

出口COMPOSE_CONVERT_WINDOWS_PATHS="true"

@# 运行 此命令用于配置您的 shell: @# eval $("C:\Program Files\Docker Toolbox\docker-machine.exe" env)

eval $("C:\Program Files\Docker Toolbox\docker-machine.exe" env)

然后测试,试试

docker run hello-world

大家好,抱歉我的英语不好,但是经过大量研究,我终于开始解决 CentOS 7 中的 Docker 问题到 运行 Hello-World

在 systemd 中为 docker 服务创建一个目录:

 $ mkdir -p /etc/systemd/system/docker.service.d 

创建名为 https-proxy.conf 的文件

 $ /etc/systemd/system/docker.service.d/https-proxy.conf

添加环境变量"HTTP_PROXY""HTTPS_PROXY":

[Service]
Environment="HTTP_PROXY=http://(host_name):(port_number)/" "HTTPS_PROXY=http://(host_name):(port_number)/"

重启服务守护进程和Docker“

systemctl daemon-reload
systemctl restart docker

现在,执行命令,完成。

docker run hello-world

只需将您的 HTTPS_PROXY=https://xxx:port 更改为 HTTPS_PROXY=http://xxx:port

另外,如果您使用目录/etc/systemd/system/docker.service.d中的配置文件,则需要更改https-proxy.conf文件中的内容。之后,运行 下面的命令使其生效:

systemctl daemon-reload
systemctl restart docker.service

那么你的问题应该就解决了。 :)

首先检查您的互联网连接 运行 然后 如果您在 docker 桌面 只需将 https 代理的第二个代理从 https://proxy:port 更改为 http://代理:端口 如果你在 linux 将配置文件更改为此{ "proxies": { "default": { "httpProxy": "http://127.0.0.1:3001", "httpsProxy": "http://127.0.0.1:3001", "noProxy": "*.test.example.com,.example2.com" } } } 或将变量更改为 HTTPS_PROXY ENV HTTPS_PROXY="http://proxy:port"

有关 linux 的更多信息 ***

<a href="https://docs.docker.com/network/proxy/"></a>