Установка и настройка Artifactory на Ubuntu: проксирование пакетов Python
Artifactory (JFrog) — репозиторий-менеджер для хранения и раздачи артефактов: пакетов, docker-образов, бинарников. В режиме прокси он запрашивает пакет из интернета, отдаёт клиенту и сохраняет копию у себя — удобно для ускорения сборок и работы в закрытых сетях.
В этой инструкции разберём установку триальной версии Artifactory Platform и настройку проксирования пакетов Python через pip.
Подготовка системы
apt update
apt upgrade
Открываем порты (по умолчанию 8081 — Artifactory, 8082 — Xray/UI):
iptables -I INPUT -p tcp --dport 8081 -j ACCEPT
iptables -I INPUT -p tcp --dport 8082 -j ACCEPT
apt install iptables-persistent
netfilter-persistent save
Устанавливаем зависимости:
apt install jq net-tools libllvm9 socat
где:
jq— обработка JSON в командной строке;net-tools— сетевые утилиты;libllvm9— библиотеки компилятора;socat— переадресация сокетов.
Без этих пакетов установка Artifactory вернёт ошибку.
Установка Artifactory
Artifactory распространяется платно — ставим триальную версию с ключом на 30 дней.
Скачиваем архив со скриптами установки:
wget -O jfrog-deb-installer.tar.gz "https://releases.jfrog.io/artifactory/jfrog-prox/org/artifactory/pro/deb/jfrog-platform-trial-prox/[RELEASE]/jfrog-platform-trial-prox-[RELEASE]-deb.tar.gz"
Распаковываем и переходим в каталог:
tar -xvzf jfrog-deb-installer.tar.gz
cd jfrog-platform-trial-pro*
Запускаем установку:
./install.sh
Скрипт работает некоторое время, после чего попросит запустить сервисы:
systemctl enable artifactory --now
systemctl enable xray --now
Открываем в браузере:
http://<IP-сервера>:8082/ui/
Вводим логин и пароль по умолчанию: admin / password. Попадём в мастер настройки — пока ничего не меняем.
Для получения триального ключа переходим на jfrog.com/start-free, регистрируемся — ключи для artifactory и xray придут на почту. Возвращаемся на сервер и активируем систему.
Проксирование пакетов Python через Artifactory
Настроим сервер и клиент.
Настройка сервера
В веб-интерфейсе переходим в раздел администрирования и создаём три репозитория типа PyPI:
- Локальный — для ваших пакетов.
- Удалённый (remote) — прокси на PyPI.
- Виртуальный (virtual) — объединяет первые два и выдаётся клиентам.
Задаём имена (в примере — pypi, pypi-remote, pypi-virtual), а в виртуальный добавляем локальный и удалённый. Это минимально достаточная конфигурация.
Настройка клиента
В веб-интерфейсе в правом верхнем углу — Welcome, admin → Set Me Up. Выбираем «Package Type» Pypi и виртуальный репозиторий, вводим пароль. На вкладке Resolve получаем строку подключения.
На клиенте открываем конфигурацию pip:
vi /etc/pip.conf
Для отдельного пользователя:
mkdir -p ~/.pip
vi ~/.pip/pip.conf
Добавляем:
[global]
index-url = http://admin:APLdxDAPCHVrL2sGfuh1N58fk8@192.168.101.100:8081/artifactory/api/pypi/pypi/simple
trusted-host = 192.168.101.100
где:
index-url— хранилище пакетов Python для pip;192.168.101.100— адрес сервера Artifactory;trusted-host— список доверенных серверов (можно не указывать, если Artifactory отвечает по HTTPS).
Пароль из строки лучше не хранить в открытом виде в pip.conf — используйте переменные окружения или keyring.
Проверяем установку пакета:
pip install django
Установка должна идти с вашего сервера Artifactory.
Тонкости и подводные камни
- Триальные ключи истекут — через 30 дней сервис перестанет работать; для прода нужна лицензия.
- Порт 8082 vs 8081 — веб-интерфейс платформы на
8082/ui/, API и репозитории — на8081. - Хранение пароля в pip.conf — небезопасно; используйте
~/.netrc, переменные окружения илиkeyring. - trusted-host и HTTPS — при работе по HTTPS настройка не нужна; при HTTP pip требует явного доверия.
- Прокси для закрытых сетей — Artifactory незаменим, когда внешний доступ к PyPI ограничен.
- Зависимости установки —
libllvm9может отсутствовать в свежих Ubuntu; при ошибке ставьте актуальный пакет LLVM из репозитория дистрибутива.
Шпаргалка
apt install jq net-tools socat iptables-persistent
wget -O jfrog-deb-installer.tar.gz "https://releases.jfrog.io/artifactory/jfrog-prox/org/artifactory/pro/deb/jfrog-platform-trial-prox/[RELEASE]/jfrog-platform-trial-prox-[RELEASE]-deb.tar.gz"
tar -xvzf jfrog-deb-installer.tar.gz && cd jfrog-platform-trial-pro*
./install.sh
systemctl enable artifactory xray --now
# UI: http://<IP>:8082/ui/ (admin/password)
# клиент pip:
# [global]
# index-url = http://user:pass@192.168.101.100:8081/artifactory/api/pypi/pypi/simple
# trusted-host = 192.168.101.100
Проверено на: Ubuntu 22.04/24.04 + JFrog Artifactory Platform (trial).
Дата: Сентябрь 2026.