Как заставить Anaconda работать за HTTP-прокси (не https)?

У меня проблемы с работой с Anaconda через прокси на работе.

Когда у меня есть следующие переменные среды:

http_proxy: http://domain\username:[email protected]:8080
https_proxy: https://domain\username:[email protected]:8080

или просто

http_proxy: http://server\username:[email protected]:8080

настроить, то git работает. Но Анаконда не работает. я пытаюсь бежать

conda update conda

и я получаю:

Could not connect to https://repo.continuum.io/pkgs....
Could not connect to https://repo.continuum.io/pkgs....

Анаконда не работает с http? и требует прокси https? Потому что я думаю, что у моей компании может не быть настройки прокси-сервера https (я видел, что они используют только http). или иногда я получаю сообщение об ошибке:

File "c\Anaconda2\", line 340, in wait
    waiter.acquire()
KeyboardInterrupt
Could not connect to https://repo.continuum.io/pkgs....
Could not connect to https://repo.continuum.io/pkgs....

Я использую Windows 7.


person Alo    schedule 19.04.2016    source источник


Ответы (8)


вам нужно создать файл .condarc в вашей пользовательской области Windows:

C:\Users\<username>\

Файл должен содержать:

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://proxy.yourorg.org:port
    https: http://proxy.yourorg.org:port


ssl_verify: False
person ctrl-alt-delete    schedule 29.04.2016
comment
Спасибо @toasteez, но это решение не работает. Я точно следовал вашему совету, но когда я запускаю conda update conda для тестирования, я получаю сообщение об ошибке, в котором говорится, что мне не удалось найти прокси для https. Смотри адрес..... - person Alo; 03.05.2016
comment
Попробуйте использовать один и тот же http-адрес proxy.yourorg.org:port для обоих. Также обновите свои локальные переменные среды для HTTP_PROXY и HTTPS_PROXY до тех же. У большинства организаций есть прокси с файлом wpad.dat и дополнительным адресом прокси. Вам нужно найти правильный. - person ctrl-alt-delete; 04.05.2016
comment
Спасибо @toasteez. Мои переменные среды для HTTP_PROXY и HTTPS_PROXY установлены на username:[email protected]:8080 и то же самое для HTTPS_PROXY. и я был уверен, что с ними все в порядке (или, по крайней мере, с HTTP_PROXY), потому что теперь я могу использовать git для извлечения и отправки. Но команды Анаконды не проходят. Где я могу найти файл wpad.dat? Может быть, мне следует использовать другой HTTPS_PROXY? - person Alo; 04.05.2016
comment
wpad.dat обычно находится в настройках прокси-сервера локальной сети IE Explorer. Вы можете скопировать путь в браузер для просмотра файла. Он может показать прокси. Я бы указал запись https .condarc на http. https: proxy.yourorg.org:port Обратите внимание: если вы найдете правильный прокси-сервер, вы сможете заставить это работать без пользователя: pass. Это действительно плохая практика, и ваш сетевой администратор, вероятно, заметит это. - person ctrl-alt-delete; 06.05.2016
comment
@ Кроме того, вам, возможно, придется запросить, чтобы команда брандмауэра открыла доступ по https к репозиторию: repo.continuum.io/pkgs/free/win-64 - person ctrl-alt-delete; 06.05.2016
comment
это сработало! Это моя вина, что я не прочитал ваш ответ достаточно внимательно. На https: это было blahblah:blah. Я делал blahblah:blah. Спасибо! - person Alo; 10.05.2016
comment
https: http://proxy.yourorg.org:port должно быть https: httpS://proxy.yourorg.org:port (обратите внимание на S в http) - person Boern; 18.05.2017
comment
Отключение проверки SSL потенциально может иметь катастрофические последствия. Я лично нашел бы другой способ. - person spacedustpi; 03.08.2018
comment
У меня это вообще не сработало, команды conda перестали выполняться - person Paul; 22.10.2018

Если приведенные выше решения не сработали для вас, вы можете попробовать это.

Зайдите в настройки ПК, а затем в прокси. Просто задайте глобальную настройку прокси для вашего компьютера. Когда я это сделал, это сработало для меня.

введите здесь описание изображения

person Sadman Amin    schedule 09.06.2019

Далее я добавил HTTP_proxy и HTTPS-прокси в переменную окружения. Использовался формат "имя пользователя:пароль@имя_прокси:порт". Затем я снова открыл подсказку Anaconda. Введите «set», чтобы убедиться, что добавленные переменные присутствуют в среде Anaconda. Теперь вы можете ввести «spyder» в приглашении Ananconda. Эта настройка работала для меня.

Первоначально я пытался установить файл «.condarc» с параметрами прокси и безуспешно пробовал «conda update conda».

person Abhishek025    schedule 16.03.2018

Приведенное выше решение по изменению .condarc у меня не работает. Однако мне удалось обновить переменные среды в расширенных системных настройках в формате https://user:[email protected]:8080.

Если ваш пароль содержит специальные символы, вам нужно экранировать их, как описано в разделе Процентное кодирование зарезервированных символов в Википедии. https://en.wikipedia.org/wiki/Percent-encoding#Percent-encoding_reserved_characters

person Mina HE    schedule 21.12.2017
comment
Большое спасибо, Список зарезервированных символов для специальных символов ! - %21 # - %23 $ - %24 % - %25 & - %26 ' - %27 ( - %28 ) - %29 * - %2A + - %2B , - %2C / - %2F : - %3A ; - %3B = - %3D ? - %3F @ - %40 [ - %5B ] - %5D - person Ashwaq; 19.12.2019

Приведенное ниже помогло мне навсегда установить мои прокси для Anaconda:

Перейдите в C:/ProgramData/Anaconda3/etc/

Если у него еще нет папки conda, создайте ее.

Если у него еще нет папок activ.d и deactive.d, создайте их.

Также создайте env_vars.bat в обеих папках. Ваша конечная структура должна выглядеть так, как показано на снимке ниже:

введите здесь описание изображения

В env_vars.bat в activ.d вставьте следующее (замените на собственные прокси):

set HTTP_PROXY=http://xx.xx.x.xx:xxxx/
set FTP_PROXY=http://xx.xx.x.xx:xxxx/
set HTTPS_PROXY=https://xx.xx.xxx.xx:xxxx/

В env_vars.bat в deactivate.d вставьте следующее (оставьте переменные пустыми):

set HTTP_PROXY=
set FTP_PROXY=
set HTTPS_PROXY=

Закройте и снова откройте приглашение Anaconda, чтобы активировать изменения.

person yl_low    schedule 26.01.2019
comment
Ура! это то, что работает для меня. В моем случае Aanconda установлена ​​только у меня, поэтому файл bat должен быть создан в C:\Users\xxxxxxx\AppData\Local\Continuum\anaconda3\etc\conda\activate.d - person Mickaël M.; 06.03.2019

См. мой ответ в другом сообщении:

Лучший способ, с которым я согласился, — это установить переменные среды прокси-сервера непосредственно перед использованием команд установки/обновления conda или pip. Просто запустите:

set HTTP_PROXY=http://username:password@proxy_url:port

Например, ваша фактическая команда может быть такой

set HTTP_PROXY=http://yourname:[email protected]_company.com:8080

Если ваша компания использует https-прокси, то также

set HTTPS_PROXY=https://username:password@proxy_url:port

Как только вы выйдете из приглашения Anaconda, этот параметр исчезнет, ​​поэтому ваше имя пользователя/пароль не будет сохранено после сеанса.

Я не выбирал другие методы, упомянутые в документации Anaconda или в некоторых других другие источники, потому что все они требуют жесткого кодирования имени пользователя/пароля в

  • Переменные среды Windows (также требуется перезагрузка приглашения Anaconda в первый раз)
  • Файлы конфигурации Conda .condarc или .netrc (также это не будет работать для PIP)
  • Пакетный файл/файл сценария, загружаемый при запуске приглашения Anaconda (также может потребоваться настройка пути)

Все это небезопасно и потребует постоянного обновления позже. А если забыть где обновить? Дальнейшие действия по устранению неполадок появятся на вашем пути...

person Frank Wang    schedule 20.02.2020
comment
Как включить URL-адрес PAC в conda? - person Palash Jhamb; 15.09.2020

У меня работало с сертификатом yourcertname.pem: https://aafaqueabdullah.wordpress.com/2017/04/10/ssl-authentication/

person itsergiu    schedule 21.03.2019

Этот метод работал для меня:

Скопируйте файлы libcrypto-1_1-x64.dll и libssl-1_1-x64.dll из каталога ./Anaconda3/Library/bin/ в ./Anaconda3/DLL.

Надеюсь, это ответ на ваш вопрос

person Edward Lu    schedule 28.01.2021