Docker não pode extrair imagens atrás do servidor proxy

Docker não pode extrair imagens atrás do servidor proxy

estou usando o docker versão 20.10.14 com CentOS Linux 7, acabei de instalar o docker e definir as configurações de proxy em /usr/lib/systemd/system/docker.service e minhas configurações de proxy são

Environment="HTTP_PROXY=http://10.330.100.100:3128/"
Environment="HTTPS_PROXY=https://10.330.100.100:3128/"
Environment=no_proxy=localhost,127.0.0.1

eu recebo um erro como

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

e ao alterar HTTPS_PROXY de https -> http eu recebo

Error response from daemon: Get "https://registry-1.docker.io/v2/": Bad Request

e ao tentar enrolar "https://registry-1.docker.io/v2/" eu recebo

curl: (56) Received HTTP code 400 from proxy after CONNECT

Responder1

Environment="HTTP_PROXY=http://10.330.100.100:3128/"
Environment="HTTPS_PROXY=https://10.330.100.100:3128/"
                             ^                  ^^^^

Aqui você configura seu servidor proxy para estar disponível em HTTP e HTTPS simplesna mesma porta. É extremamente improvável que seja esse o caso.

Seu servidor proxy está configurado com seu próprio certificado TLS e escutará http e https em portas diferentes.

Ou, e geralmente é o caso, o servidor proxy suporta apenas conexões http simples e as solicitações para recursos HTTPS ainda precisarão usar HTTP simples para fazer a conexão com o servidor proxy. (Uma vez conectado ao proxy, o cliente usará o método CONNECT para estabelecer uma conexão TLS através do proxy para o servidor web, o que cria um canal criptografado de ponta a ponta.)

Em outras palavras: provavelmente você precisará alterar a variável HTTPS_PROXY para:

Environment="HTTPS_PROXY=http://10.330.100.100:3128/"

Quando você precisa usar um proxy, isso geralmente significa que o tráfego TLS também é controlado. Talvez seja necessário instalar e ativar o certificado CA da sua organização.


Quando você precisa usar um proxy, isso significa que outras pessoas na sua organização serão obrigadas a fazer o mesmo.

Isso significa que você (ou melhor, seu servidor proxy, irá rapidamente se deparar com a limitação de taxa do docker. Veja:https://docs.docker.com/docker-hub/download-rate-limit/

informação relacionada