Sonatype Nexus — Сервер репозиториев, с помощью которого можно проксировать, хранить и управлять зависимостями Maven, Python, Ruby, NPM, Go, Nuget, а так же deb, yum, gitfs, docker — образы и другие.
Nexus позволяет не только хранить свои пакеты, а так же проксировать и хранить пакеты официальных репозиториев, что существенно ускоряет сборки и разгружает интернет канал.
Прежде всего нам потребуется машина на Linux, с установленным Docker, как это сделать я уже описывал в статье: Установка Docker в Linux
Перейдем к процессу установки:
Запускаем установку Nexus командой:
docker run -d -p 8081:8081 --name nexus --restart=always -v /srv/nexus/nexus-data:/nexus-data sonatype/nexus3
Сразу проверяем лог деплоя командой:
docker logs -f nexus
В случае если контейнер падает с такой ошибкой:
Caused by: java.io.FileNotFoundException: /nexus-data/log/karaf.log (No such file or directory)
at java.io.FileOutputStream.open0(Native Method)
at java.io.FileOutputStream.open(FileOutputStream.java:270)
at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
at
...
Нужно выполнить, что бы выдать недостающие права на примонтированный volume:
chown -R 200:200 /srv/nexus/
Как только контейнер запустится и развертка завершиться можно переходить в веб интерфейс по адресу Получаем пароль админа командой: Возвращаемся в web интерфейс и логинимся в админку: После авторизации запустится мастер настройки и попросит сменить пароль админа — указываем новый. Далее спросит включить ли по умолчанию анонимный доступ. Т.к. в большинстве случаев nexus разворачивают внутри изолированной среды только для разработки ставим параметр “Enable anonymous access”. В последствии его всегда можно отключить. Установка завершена. По умолчанию у nexus уже включены некоторые репозитории:cat /srv/nexus/nexus-data/admin.password
Полезные материалы по теме:
- Настройка docker proxy репозитория в Nexus
- Nexus docker proxy за Nginx reverse proxy
- Установка Docker в Linux
- Шпаргалка по работе с Docker
Отправить ответ