Vagrant-Proxy-Einstellungen für Host-Downloads und Gast-Aufgaben
Konfigurieren Sie Host-Downloads und Gast-Provisioner auf ihrer jeweiligen Ebene, wenn Sie mit Vagrant und vagrant-proxyconf einen Proxy verwenden.
Ein Vagrant-Projekt hat einen Host-Downloadpfad, bevor der Gast existiert, und einen weiteren Pfad für Gast-Provisioner und Paketwerkzeuge. Konfigurieren Sie jeden dort, wo er ausgeführt wird.
Für Host-Werkzeuge, die diese Variablen verwenden, ist ein Beispielweg:
export http_proxy=http://gateway.example:8080
export https_proxy=http://gateway.example:8080
Vagrant dokumentiert http_proxy für HTTP-Box-Downloads. Auch der Bezug von Plug-ins benötigt Erreichbarkeit vom Host aus; ein Plug-in zur Gastkonfiguration kann sich nicht selbst herunterladen. HTTPS-Ziele können weiterhin einen HTTP-Proxywert verwenden. Für erlaubte öffentliche Downloads ohne konfigurierte Proxy-Anmeldedaten auf dem jeweiligen Host- oder Gast-Client kann die HTTP-Proxy-Liste geeignete HTTP-Endpunkte liefern.
Wenn ein kompatibles vagrant-proxyconf bereits installiert ist, geben Sie dem Gast seinen Weg über die Vagrantfile:
Vagrant.configure("2") do |config|
if Vagrant.has_plugin?("vagrant-proxyconf")
config.proxy.http = "http://gateway.example:8080"
config.proxy.https = "http://gateway.example:8080"
config.proxy.no_proxy = "localhost,127.0.0.1"
end
end
Das Plug-in schreibt die unterstützte Gastkonfiguration vor den Provisionern. Seine VAGRANT_HTTP_PROXY und verwandte Eingaben können Dateieinstellungen überschreiben; prüfen Sie sie, wenn Änderungen nicht wirksam werden.
Aus Sicht des Gastes bedeutet localhost den Gast. Ein Proxy auf der Host-Loopback-Schnittstelle benötigt einen ausdrücklich erreichbaren Pfad statt einer kopierten Host-URL. Das export eines Shell-Provisioners endet zudem mit dieser Shell und ihren Kindprozessen; es legt keine spätere Anmeldungs- oder Dienstrichtlinie fest.
Zum Entfernen löschen Sie die bereits im Gast geschriebene Konfiguration mit den dokumentierten leeren/falschen Eingaben des Plug-ins. Das Schließen des Host-Terminals entfernt diese dauerhaften Dateien nicht.