2015-03-25 14 views
12

Staramy się, aby instalacja conda (w systemie Windows 8) działała za zaporą sieciową za pośrednictwem serwera proxy. Obecnie jesteśmy w stanie wykorzystać pip zainstalować pakiety podczas naszej sieci firmowej przy użyciu tego w wierszu poleceń:Jak włączyć serwery proxy za pomocą pytka anaconda?

pip install pandas --proxy=http://abc.def.xyz.com:1234 

Brak Hasła muszą być określone, tylko serwer proxy i port. W conda documentation stwierdza, że ​​możliwe są serwery proxy:

# Proxy settings: http://[username]:[password]@[server]:[port] 
proxy_servers: 
    http: http://user:[email protected]:8080 
    https: https://user:[email protected]:8080 

Próbowałem to z różnych kombinacjach, aby zobaczyć, czy mogę zmusić go do pracy z lub bez wprowadzania w mojej nazwy użytkownika i hasła.

# formats tried: 
http: http://user:[email protected]:1234 
http: http://abc.def.xyz.com:1234 

Nie mogę sprawić, żeby zadziałało. Próbowałem różnych kombinacji cytowania rzeczy (hasła mają specjalne znaki). Próbowano również zi bez domeny \ użytkownik.

Widzę pod maską, conda używa urlib3 (podczas gdy pip może używać urlib proxy handler?). Zauważ, że posiadanie nazwy użytkownika i hasła w pliku jest ogólnie mile widziane.

Wiem, że możemy ustawić nasz własny kanał lokalizacji http lub pliku i umieścić tam wszystkie pakiety i dodać kanał do ustawień konfiguracji .condarc. Jednak wolałbym nie zarządzać repozytorium pakietów i wersji lokalnie.

Więc ... czy istnieje sposób określenia w pliku .condarc serwera proxy i portu (bez użytkownika i hasła), aby instalacja conda działała za zaporą ogniową, podobnie jak instalacja pip w wierszu poleceń? Lub nawet wezwanie inline jak pip ma i działa ... coś takiego:

conda install pandas --proxy=abc.def.xyz.com:1234 

z góry dzięki ...

PS: Uwielbiam Conda. Spędziłem w ostatni weekend wiele wirtualnych środowisk na moim domowym komputerze. Dokumentacja była świetna i wszystko działało bez zarzutu. Ogólnie rzecz biorąc, o wiele lepiej niż pip ... gdybyśmy tylko mogli to uruchomić w naszej firmie :)

+0

conda i pip używają żądań, które używają urllib3. – asmeurer

Odpowiedz

12

Cóż, to krępujące, ale dobre wieści. Rozwiązałem mój problem, wykonując jeszcze jedną próbę zmiany w pliku condarc.

https: https://abc.def.xyz.com:1234 

Chyba PIP pracował ok regularne http, natomiast adresy Conda są wszystkie https strony:

https://repo.continuum.io/pkgs/free/win-64/ 

powinienem złowione!

Cóż, teraz cieszę się, że mamy rozwiązanie pozwalające używać Conda za naszą zaporą ogniową i bez potrzeby posiadania użytkownika i hasła. Niesamowite!

+0

Czy jesteś w systemie Windows? Jeśli tak, to gdzie jest plik konfiguracyjny conda? – dustin

+0

Czy ktoś wie, skąd PIP zainstalowany przez anaconda 4.0.0 podnosi proxy? – toasteez

+0

Nie mogłem znaleźć sposobu na umieszczenie informacji o proxy w konfiguracji. Jednak zmienne środowiskowe http_proxy i https_proxy działają dobrze. –

1

Późna odpowiedź, ale być może inne osoby borykające się z tym problemem mogą skorzystać.

Tworzenie .condarc plików contaninig:

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 

Zmiana adresów IP z własnymi ustawieniami proxy.

umieścić ten plik w katalogu głównym twojego użytkownika (dla mnie: C: \ Users \ bakayim)

Uruchom ponownie szybka anakonda

0

Mogę potwierdzić, że .condarc nie miało pożądany efekt w moim przypadku (Windows 7). Dzięki conda info mogę sprawdzić, czy został załadowany, ale nie wywarł żadnego efektu.

Musiałem ustawić wcześniej wymienione zmienne środowiskowe, aby uzyskać połączenie zza proxy.

miałem zrobić w następujący sposób w wierszu polecenia:

set http_proxy=[protocol:your_proxy_address_here:port] 
set https_proxy=[protocol:your_proxy_address_here:port] 

Usuń nawiasy. Aby zweryfikować (wpisać) swoje równoczesne ustawienia, wpisz: zestaw

0

Nowa wersja Anacondy zawiera plik .condar w katalogu użytkownika C:\Users\User_name\.condarc.

więc wszystko zrobić, to po prostu edytować treść, jak poniżej:

channels: 
    - defaults 

show_channel_urls: True 
allow_other_channels: True 

proxy_servers: 
    http: http://172.**.*.***:8080 
    https: https://172.**.*.***:8080 

ssl_verify: true 

to co pracował dla mnie.

Powiązane problemy