docker - docker:拉取图像时出现“第一条记录看起来不像 TLS 握手”错误
问题描述
我刚刚安装了docker,然后尝试运行hello-world
程序。我的服务器在公司代理后面。因此,我根据 docker 的手册在一个名为的文件中设置了代理环境变量/etc/systemd/system/docker.service.d/http-proxy.conf
:
[Service]
Environment="HTTP_PROXY=http://username:password@server:8080"
Environment="HTTPS_PROXY=https://username:password@server:8080"
Environment="NO_PROXY=localhost,127.0.0.1,localaddress,.localdomain.com"
但是,在运行时$ sudo docker run hello-world
。我得到错误
Unable to find image 'hello-world:latest' locally
docker: Error response from daemon: Get https://registry-1.docker.io/v2/: proxyconnect tcp: tls: first record does not look like a TLS handshake.
See 'docker run --help'.
这是docker version
:
Client: Docker Engine - Community
Version: 19.03.9
API version: 1.40
Go version: go1.13.10
Git commit: 9d988398e7
Built: Fri May 15 00:25:34 2020
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.9
API version: 1.40 (minimum version 1.12)
Go version: go1.13.10
Git commit: 9d988398e7
Built: Fri May 15 00:24:07 2020
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.2.6
GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
runc:
Version: 1.0.0-rc8
GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f
docker-init:
Version: 0.18.0
GitCommit: fec3683
这是docker info
(我隐藏了有关我公司代理的信息):
Client:
Debug Mode: false
Server:
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 19.03.9
Storage Driver: overlay
Backing Filesystem: extfs
Supports d_type: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
runc version: 425e105d5a03fabd737a126ad93d62a9eeede87f
init version: fec3683
Security Options:
apparmor
seccomp
Profile: default
Kernel Version: 4.15.0-65-generic
Operating System: Ubuntu 16.04.6 LTS
OSType: linux
Architecture: x86_64
CPUs: 48
Total Memory: 31.31GiB
Name: SPP00007867
ID: EEZD:GC4D:IWYF:2MVR:RLXW:MAZU:EQPV:A3FY:RFUY:6NXP:EJNG:TRMD
Docker Root Dir: /mnt/docker-data
Debug Mode: false
HTTP Proxy: http://xxxxx:xxxxx@xxx:8080
HTTPS Proxy: http://xxxxx:xxxxx@xxx:8080
No Proxy: localhost,127.0.0.1,localaddress,.localdomain.com
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
WARNING: No swap limit support
WARNING: the overlay storage-driver is deprecated, and will be removed in a future release.
谁能帮我 ?谢谢大家!!!
解决方案
我有这个确切的问题,这是由于 HTTPS_PROXY 在 bashrc 和 docker 桌面设置配置中没有分配正确的变量(https 而不是 http)
推荐阅读
- json - jsonPath 返回不带括号的字符串
- javascript - 制表符修改图像路径
- java - 设置 Spring Boot + Angular 以与 Facebook Marketing API 通信的最佳方式
- git - 将分叉的本地分支更新为上游/主分支
- sql - 有没有办法在 SQL HANA 的 TO_DATE 函数中使用 REPLACE 函数
- vb.net - IDX10634:无法创建 SignatureProvider
- github - 为什么标题会在 GitHub readme.md 降价页面中自动创建链接?
- python-3.x - 如何在 URL 位置将 DataFrame 导出为 Excel
- r - R中的复杂ggplot - 半圆形条形图
- reactjs - 在 axios 上使用 uri 的问题