2026-09-19

Установка и настройка 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:

  1. Локальный — для ваших пакетов.
  2. Удалённый (remote) — прокси на PyPI.
  3. Виртуальный (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.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *