Ich verwende Docker für Mac hinter einem Proxy. Ich konfiguriere die Proxy-Konfiguration in der Docker GUI unter "Proxies" - & gt; "Manuelle Proxy-Konfiguration" Dadurch kann ich Docker-Bilder aus dem Repository hinter dem Proxy herunterladen.
Als nächstes setze ich die Umgebungsvariablen http_proxy
und https_proxy
und verwende sie in meinem docker-compose.yml, um sie an den Build zu übergeben:
Wie kann ich die Variablen, die ich über die Docker GUI im Terminal eingestellt habe, bekommen, damit ich sie nicht zweimal einstellen muss? Gibt es Docker-spezifische Umgebungsvariablen, die ich verwenden kann?
Wenn ich richtig verstanden habe, willst du, dann musst du nur lesen, was von docker info
:
Wenn diese zwei in der GUI gesetzt sind, erscheinen sie am Ende der Ausgabe. Wenn sie nicht gesetzt sind, werden sie nicht angezeigt, und in meinem Fall wird stattdessen No Proxy: *.local, 169.254/16
angezeigt.
Installieren Sie proxycap oder redsocks und entlasten Sie sich von den lästigen Proxy-Fehlern für all Ihre Tools und nicht nur für Docker. Proxycap / Redsocks leiten Datenverkehr transparent an den angegebenen Proxy um, sodass Sie keine Proxyeinstellungen mehr konfigurieren.
Aktualisieren : Es gibt ein Docker-Image für Redsocks, falls Sie es nicht auf dem Host-Rechner installieren können. Ссылка
Mein bestes Wissen: Es ist nicht möglich.
Die einzige Idee, die ich bekomme, ist die Verwendung von iptable-Regeln (ich vermute, es gibt ähnliche Sachen in Mac), die externe IP-Pakete zum Proxy umleiten. Es bedeutet, dass Ihr Docker sauber ist, Sie aktivieren / deaktivieren einfach Regeln, wenn Sie hinter einem Proxy stehen oder nicht.
Es ist nicht einfach, aber es ist machbar.
Entweder exportieren Sie sie oder Sie können die rechte Seite in Ihrem Skript verwenden.
%Vor%Tags und Links docker docker-compose