Docker Pull mit Proxy ergibt „erster Datensatz sieht nicht wie ein TLS-Handshake aus“

Docker Pull mit Proxy ergibt „erster Datensatz sieht nicht wie ein TLS-Handshake aus“

Ich habe einen Unternehmensserver, der für ausgehenden Datenverkehr einen Proxy verwenden muss. Gemäß der Docker-Dokumentation von Microsoft habe ich Powershell-Befehle ausgeführt:

[Environment]::SetEnvironmentVariable("HTTP_PROXY", "http://my.secret.proxy.net:8888", [EnvironmentVariableTarget]::Machine)
[Environment]::SetEnvironmentVariable("HTTPS_PROXY", "https://my.secret.proxy.net:8888", [EnvironmentVariableTarget]::Machine)
Restart-Service docker

aber wenn ich docker builddanach ein ausführe, bekomme ich:

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

Ich habe versucht, httpstattdessen httpsfür die Proxy-Adressen usw. zu verwenden. Gleiches Ergebnis. Der Proxy ist ein transparenter Proxy und macht nichts „Intelligentes“.

Das Ausführen pip install flake8 --proxy=https://my.secret.proxy.net:8888funktioniert, also weiß ich, dass der Proxy funktioniert.

Irgendwelche Ideen? Irgendwelche Tipps zum weiteren Debuggen? Danke!

Antwort1

In Ihrer "HTTPS_PROXY", "https://my.secret.proxy.net:8888"Änderung https://zuhttp://

Antwort2

Mit der aktuellen Version von Docker für Windows gibt es eineRessourcen -> ProxysAbschnitt der Benutzeroberfläche, in dem Sie Proxys zum Abrufen von Bildern konfigurieren.

Referenz:https://docs.docker.com/config/daemon/systemd/#httphttps-proxy

Sie müssen in laufenden Containern noch Proxy-Variablen konfigurieren. Dazu können Sie ~/.docker/config.jsonFolgendes aktualisieren:

{
 "proxies":
 {
   "default":
   {
     "httpProxy": "http://192.168.1.12:3128",
     "httpsProxy": "http://192.168.1.12:3128",
     "noProxy": "*.test.example.com,.example2.com,127.0.0.0/8"
   }
 }
}

Ich bin nicht sicher, wo sich dies unter Windows befindet, insbesondere wenn Sie WSL2 nicht verwenden, aber die Datei sollte bereits vorhanden sein, wenn Sie sich docker loginbei einem Register angemeldet haben.

Referenz:https://docs.docker.com/network/proxy/

verwandte Informationen