Как включить прокси-серверы с anaconda python?
Мы пытаемся получить установку conda (на окнах 8) для работы за брандмауэром через прокси-сервер. В настоящее время мы можем использовать pip для установки пакетов в сети нашей компании, используя это в командной строке:
pip install pandas --proxy=http://abc.def.xyz.com:1234
Не нужно указывать пароли, просто прокси-сервер и порт. В документации conda указано, что возможны прокси-серверы:
# Proxy settings: http://[username]:[password]@[server]:[port]
proxy_servers:
http: http://user:[email protected]:8080
https: https://user:[email protected]:8080
Я пробовал это с различными комбинациями, чтобы увидеть, могу ли я заставить его работать с или без ввода моего имени пользователя и пароля.
# formats tried:
http: http://user:[email protected]:1234
http: http://abc.def.xyz.com:1234
Я не могу заставить его работать. Пробовал различные комбинации цитирования вещей (пароли имеют специальные символы). Также попытался с и без домена\пользователь.
Я вижу под капотом, conda использует urlib3 (в то время как pip может использовать urlib proxy handler?). Обратите внимание, что наличие имени пользователя и пароля в файле обычно не одобряется.
Я знаю, что мы могли бы настроить наш собственный http-адрес или папку для размещения файлов и поместить туда все пакеты и добавить канал в настройки конфигурации .condarc. Однако я бы предпочел не управлять локальным хранилищем пакетов и версий.
Итак, есть ли способ указать в файле .condarc прокси-сервер и порт (без пользователя и пароля), чтобы установка conda работала за брандмауэром, точно так же, как pip install в командной строке? Или даже встроенный вызов типа pip имеет и работает... что-то вроде:
conda install pandas --proxy=abc.def.xyz.com:1234
Спасибо заранее...
PS: Мне очень нравится конда. В прошлые выходные я провел множество виртуальных сред на своем домашнем ПК. Документация была отличная, и все работало безупречно. В целом, намного лучше, чем пип... если бы мы могли только заставить это работать внутри нашей компании:)
Ответы
Ответ 1
Ну, это неловко, но хорошие новости. Я решил проблему с еще одной попыткой изменения файла condarc.
https: https://abc.def.xyz.com:1234
Я думаю, что pip работал нормально с обычным http, в то время как конда-адреса - все https-сайты:
https://repo.continuum.io/pkgs/free/win-64/
Я должен был это понять!
Хорошо, теперь я просто счастлив, что у нас есть решение использовать conda за нашим брандмауэром и без необходимости использования имени пользователя и пароля. Отлично!
Ответ 2
Поздний ответ, но, возможно, другие люди, столкнувшиеся с этой проблемой, могут выиграть.
Создайте файл .condarc 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
Изменить IP-адреса с помощью собственных настроек прокси.
Поместите этот файл в основную папку пользователя (для меня: C:\Users\bakayim)
Перезапустите запрос anaconda
Ответ 3
для меня был следующий .condarc
файл
channels:
- r
- defaults
proxy_servers:
http: http://username:[email protected]:Proxyport
https: https://username:[email protected]:Proxyport
ssl_verify: true
Ответ 4
Я также установил 2 переменные среды Windows: (не знаю, было ли это необходимо)
Name: http_proxy
Переменная: http://username:[email protected]:Proxyport
Name: https_proxy
Переменная: https://username:[email protected]:Proxyport
Ответ 5
Я могу подтвердить, что .condarc не имел желаемого эффекта в моем случае (Windows 7). С conda info
я мог проверить, что он был загружен, но он не имел никакого эффекта.
Мне нужно было установить переменные окружения, чтобы получить соединение из-за прокси.
В командной строке было сделано следующее:
set http_proxy=[protocol:your_proxy_address_here:port]
set https_proxy=[protocol:your_proxy_address_here:port]
Снять скобки. Для проверки (списка) ваших одновременных настроек просто введите: установить
Ответ 6
Откройте команду Anaconda и выполните следующую команду:
set HTTP_PROXY=http://username:[email protected]:8080
set HTTPS_PROXY=https://username:[email protected]:8443
Ответ 7
Новая версия Anaconda поставляется с файлом .condar в каталоге пользователя C:\Users\User_name\.condarc
.
так что все, что нужно сделать, это просто отредактировать содержимое, как показано ниже:
channels:
- defaults
show_channel_urls: True
allow_other_channels: True
proxy_servers:
http: http://172.**.*.***:8080
https: https://172.**.*.***:8080
ssl_verify: true
Вот что сработало для меня.