Wir versuchen, die Conda-Installation (unter Windows 8) über einen Proxyserver hinter einer Firewall zum Laufen zu bringen. Gegenwärtig können wir mit pip Pakete in unserem Firmennetzwerk installieren, indem wir dies an der Eingabeaufforderung ausführen:
pip install pandas --proxy=http://abc.def.xyz.com:1234
Es müssen keine Passwörter angegeben werden, nur der Proxy-Server und der Port. Die Conda-Dokumentation besagt, dass Proxy-Server möglich sind:
# Proxy settings: http://[username]:[password]@[server]:[port]
proxy_servers:
http: http://user:[email protected]:8080
https: https://user:[email protected]:8080
Ich habe dies mit verschiedenen Kombinationen versucht, um zu sehen, ob ich es mit oder ohne Eingabe meines Benutzernamens und Passworts zum Laufen bringen kann.
# formats tried:
http: http://user:[email protected]:1234
http: http://abc.def.xyz.com:1234
Ich kann es scheinbar nicht zum Laufen bringen. Versuchte auch verschiedene Kombinationen von Anführungszeichen (Passwörter haben Sonderzeichen). Auch mit und ohne Domäne\Benutzer ausprobiert.
Ich kann unter der Motorhaube sehen, dass conda urlib3 verwendet (während pip möglicherweise rlib proxy handler ? Verwendet). Beachten Sie, dass es im Allgemeinen verpönt ist, Ihren Benutzernamen und Ihr Kennwort in einer Datei zu haben.
Ich weiß, wir könnten unseren eigenen http- oder Dateispeicherortkanal einrichten und alle Pakete dort ablegen und den Kanal zu den .condarc-Konfigurationseinstellungen hinzufügen. Ich würde es jedoch vorziehen, ein Repository von Paketen und Versionen nicht lokal verwalten zu müssen.
Also ... gibt es eine Möglichkeit, in der .condarc-Datei den Proxy-Server und den Port (ohne Benutzer und Kennwort) anzugeben, sodass conda install hinter einer Firewall genau wie pip install auf der Befehlszeile funktioniert? Oder sogar ein Inline-Anruf wie pip hat und funktioniert ... so etwas wie:
conda install pandas --proxy=abc.def.xyz.com:1234
Danke im Voraus...
PS: Ich liebe Conda wirklich. Ich habe letztes Wochenende viele virtuelle Umgebungen auf meinem Heim-PC eingerichtet. Die Dokumentation war großartig und alles hat einwandfrei funktioniert. Alles in allem viel besser als pip ... wenn wir das nur in unserem Unternehmen zum Laufen bringen könnten :)
Nun, das ist peinlich, aber eine gute Nachricht. Ich habe mein Problem mit einem weiteren Versuch, die Condarc-Datei zu ändern, gelöst.
https: https://abc.def.xyz.com:1234
Ich denke, pip hat mit normalem http gut funktioniert, während die Adressen von conda alle https-Sites sind:
https://repo.continuum.io/pkgs/free/win-64/
Ich hätte das fangen sollen!
Nun, ich bin nur froh, dass wir eine Lösung für die Verwendung von Conda hinter unserer Firewall haben, ohne dass ein Benutzer und ein Kennwort erforderlich sind. Genial!
Eine späte Antwort, aber möglicherweise können andere Personen, die mit diesem Problem konfrontiert sind, davon profitieren.
Erstellen Sie eine .condarc-Datei mit folgendem Inhalt:
channels:
- defaults
# Show channel URLs when displaying what is going to be downloaded and
# in 'conda list'. The default is False.
show_channel_urls: True
allow_other_channels: True
proxy_servers:
http: http://172.**.*.***:8080
https: https://172.**.*.***:8080
ssl_verify: False
Ändern Sie die IP-Adressen mit Ihren eigenen Proxy-Einstellungen.
Legen Sie diese Datei in den Hauptordner Ihres Benutzers (für mich: C:\Users\bakayim)
Starten Sie Ihre Anaconda-Eingabeaufforderung neu
Ich kann bestätigen, dass .condarc in meinem Fall nicht den gewünschten Effekt hatte (Windows 7). Mit conda info
Ich konnte überprüfen, ob es geladen wurde, aber es hatte keine Auswirkung.
Ich musste die oben genannten Umgebungsvariablen setzen, um eine Verbindung hinter einem Proxy herzustellen.
Ich habe Folgendes in der Eingabeaufforderung gemacht:
set http_proxy=[protocol:your_proxy_address_here:port]
set https_proxy=[protocol:your_proxy_address_here:port]
Klammern entfernen. Um Ihre gleichzeitigen Einstellungen zu überprüfen (aufzulisten), geben Sie einfach Folgendes ein: set
was für mich funktioniert hat war die folgende .condarc
Datei
channels:
- r
- defaults
proxy_servers:
http: http://username:[email protected]:Proxyport
https: https://username:[email protected]:Proxyport
ssl_verify: true
Öffne den Anaconda Befehl und führe den folgenden Befehl aus:
set HTTP_PROXY=http://username:[email protected]:8080
set HTTPS_PROXY=https://username:[email protected]:8443
Ich habe auch 2 Windows-Umgebungsvariablen gesetzt: (Ich weiß nicht, ob es notwendig war)
Name: http_proxy
Variable: http: // Benutzername: Passwort @ Proxyadresse: Proxyport
Name: https_proxy
Variable: https: // Benutzername: Passwort @ Proxyadresse: Proxyport