URL клиента для самостоятельного размещения devpi? - PullRequest
0 голосов
/ 28 мая 2018

Я использую этот контейнер докера devpi

согласно инструкции У меня есть пароль настройки в переменной окружения DEVPI_PASSWORD для devpi, затем

У меня есть настройки ~ / .pypircфайл

[devpi]
repository:http://127.0.0.1:3141/root/pypi
username:root
password:devpi

но при попытке загрузить (обновить его, так как он содержит старую версию моего пакета) пакет python, я получаю сообщение об ошибке

$ twine upload -r devpi dist/*.tar.gz
Uploading distributions to http://127.0.0.1:3141/root/pypi
Uploading maildiff-1.3.0.tar.gz
100%|███████████████████████████████████████| 16.4k/16.4k [00:00<00:00, 667kB/s]
HTTPError: 404 Client Error: Not Found for url: http://127.0.0.1:3141/root/pypi

, так что должно бытьURL клиента?

1 Ответ

0 голосов
/ 28 мая 2018

/root/pypi - это доступная только для чтения прокси-ссылка на репозиторий PyPI по адресу https://pypi.org.. Она предназначена для установки пакетов, когда они недоступны в вашем локальном экземпляре devpi.Чтобы загрузить пакеты в локальный экземпляр, сначала нужно создать пользователя без полномочий root и индекс.На вашем хосте запустите контейнер и (при условии, что работает сопоставление портов от контейнера к хосту):

$ devpi use http://127.0.0.1:3141
$ devpi login root                         # by default, only root can create new users
$ devpi user -c me password=mypass         # create new user
$ devpi login me                           # relogin as the new user
$ devpi index -c myindex bases=/root/pypi  # create new index

Если вы получите ошибку devpi: command not found, остановите контейнер и установите devpi-client на вашем хосте:

$ pip install devpi-client

Теперь у вас есть индекс http://127.0.0.1:3141/me/myindex, который вы можете загрузить.Конфигурация в .pypirc изменяется на:

[devpi]
repository:http://127.0.0.1:3141/me/myindex
username:me
password:mypass

Установка из индекса будет работать путем передачи URL индекса в pip:

$ pip install maildiff --extra-index-url=http://127.0.0.1:3141/me/myindex
...