Вход в Docker Hub за прокси - PullRequest
       3

Вход в Docker Hub за прокси

0 голосов
/ 26 апреля 2018

Я недавно установил Docker 18.04.0-ce на мою виртуальную машину Ubuntu 17.10. Работая за прокси-сервером, я застрял, пытаясь войти в реестр Docker Hub. Поэтому, когда я бегу:

docker login -u <username> -p <cool password>

И я получаю это сообщение:

Error response from daemon: Get https://registry-1.docker.io/v2/: net/http:  
request canceled while waiting for connection (Client.Timeout exceeded while 
awaiting headers)

Насколько я понимаю из проведенного мною исследования, когда вы находитесь за прокси-сервером и хотите использовать Docker, вам необходимо соответствующим образом настроить его, даже если установить переменную среды следующим образом:

http_proxy=<my_proxy>
https_proxy=<my_proxy>
HTTP_PROXY=<my_proxy>
HTTPS_PROXY=<my_proxy>

Во-вторых, похоже, что Docker имеет несколько уровней конфигурации прокси, что означает разные конфигурации для сборки, контейнеров и демона.

Я пошел и настроил все из них, чтобы соответствовать моему прокси, но я все еще получаю это сообщение. Да, я перезапустил службу и демон.

UPDATE

$ docker info

Containers: 8
 Running: 0
 Paused: 0
 Stopped: 8
Images: 12
Server Version: 18.04.0-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 773c489c9c1b21a6d78b5c538cd395416ec50f88
runc version: 4fc53a81fb7c994640722ac585fa9ca548971871
init version: 949e6fa
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.13.0-39-generic
Operating System: Ubuntu 17.10
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 7.79GiB
Name: docker-vb
ID: 447I:6DFI:JZ7V:F6SZ:BUCB:IFB2:4HGT:MXK2:Y5H5:EECC:FIQN:SZOH
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
HTTP Proxy: http://<proxy_ip>:<proxy_port>
HTTPS Proxy: http://<proxy_ip>:<proxy_port>
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

1 Ответ

0 голосов
/ 30 августа 2018

Вход в Docker обычно должен выполняться с привилегиями sudo, поэтому убедитесь, что среда HTTPS_PROXY действительно сохранена. Просто сделано

export HTTPS_PROXY=<your proxy>

Или просто передайте его в командной строке:

sudo HTTPS_PROXY=<your proxy> docker login -u <user> <registry>

Демон docker не нужно перезапускать. Вышеприведенное работает отлично (мы широко используем прокси на работе).

Возможны проблемы с доступностью сети, прокси и, возможно, реестром. Журнал Docker может дать некоторые подсказки:

Ubuntu: sudo journalctl -fu docker.service

RHEL: /var/log/messages | grep docker

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...