Как настроить devpi-сервер для поиска pypi pip
Я использую devpi-сервер для локального кэширования и установки пакетов pypi с помощью pip. Однако, когда я ищу пакеты с помощью сервера devpi, я получаю следующую ошибку:
pypi.xyz.com - это имя сервера
ProtocolError: <ProtocolError for pypi.xyz.com:33141/root/pypi/+simple/: 405 Method Not Allowed>
Обратите внимание, что установка работает просто отлично
Редактировать: я использую прокси, которому разрешен доступ к pypi.xyz.com, установив http_proxy перед вызовом команды pip. Прокси работает нормально и предоставляет доступ к серверу pypi.xyz.com, так как вы можете без проблем запускать команды установки pip.
pip.conf:
[global]
[install]
index-url = http://pypi.xyz.com:33141/root/pypi/+simple/
[search]
index = http://pypi.xyz.com:33141/root/pypi/+simple/
Добавление пояснений, запрошенных @JanVlcinsky: 1. Установлен devpi с использованием pypi 2. Ни одна из настроек по умолчанию не была изменена, кроме смены порта 3. Ошибка протокола в консоли, когда я использую pip со следующим набором переменных среды
export http_proxy=http://localhost:33128
- Изменил порт на 33141. Просто для некоторой защиты от запутывания, старайтесь избегать использования значений по умолчанию.
- Это http_proxy (работает локально с использованием squid)
1 ответ
Вы можете найти ответ в разделе "Использование поиска по пунктам" официального документа:
pip install -q -U devpi-web
devpi-server --stop
devpi-server --recreate-search-index
devpi-server --start