728x90
Docker Compose로 Sonatype Nexus Repository 3를 설치 및 실행하는 방법
Sonatype Nexus Repository 3는 Maven, Docker, npm, PyPI, Helm 등 다양한 패키지 저장소를 통합 관리할 수 있는 대표적인 아티팩트 저장소입니다.
1. 사전 준비
Docker/Docker Compose 설치 확인
docker -v
docker compose version
2. Sonatype Nexus3 Docker 이미지 다운로드
docker pull sonatype/nexus3
3. Nexus3 디렉터리 생성
Nexus 데이터 영속성을 위해 별도 디렉터리를 생성합니다.
mkdir -p /data/nexus3/nexus-data
cd /data/nexus3
4. Docker Compose 파일 생성
vim docker-compose.yml
version: '3.7'
services:
nexus3:
image: sonatype/nexus3
restart: unless-stopped
container_name: nexus3
# privileged: true
user: root
volumes:
- ./nexus-data:/nexus-data
healthcheck:
test: ["CMD", "nc", "-zv", "localhost", "8000" ]
interval: 5s
timeout: 2s
retries: 3
ports:
- 8081:8081
- 5000:5000
5. Docker Compose 실행
docker-compose up -d
[+] Running 1/1
✔ Container nexus3 Started
이렇게 하면 Nexus3가 8081 포트에서 실행됩니다.
6. 컨테이너 상태 확인
docker-compose ps
$ docker-compose ps
NAME COMMAND SERVICE STATUS PORTS
nexus3 "sh -c ${SONATYPE_DI…" nexus3 running (unhealthy) 0.0.0.0:5000->5000/tcp, 0.0.0.0:8081->8081/tcp
7. 초기 관리자 비밀번호 확인
Nexus3는 최초 실행 시 임시 관리자 비밀번호를 생성합니다.
docker-compose exec nexus3 sh -c 'cat /nexus-data/admin.password'
$ docker-compose exec nexus3 sh -c 'cat /nexus-data/admin.password'
f1d7be03-d2c7-4113-bd59-9010383b142d
728x90
8. Nexus3 웹 접속
브라우저에서 아래 주소로 접속합니다.
http://localhost:8081
최초 로그인
- Username : admin
- Password : /nexus-data/admin.password 내용
최초 로그인 후 비밀번호 변경 화면이 나타납니다.

9. 기본 설정 진행
로그인 후 아래 항목을 설정합니다.
관리 메뉴 진입
Administration → System
권장 설정
- 관리자 비밀번호 변경
- Blob Store 경로 확인
- 익명 접근 허용 여부 설정
- SMTP 메일 설정
- 사용자 / Role 권한 관리
- Cleanup Policy 설정
- Proxy Repository 구성
10. Docker Registry 용도로 사용할 경우
5000 포트를 개방했다면 Nexus에서 Docker Hosted Repository 생성 후 사용 가능합니다.
Repository Name : docker-hosted
HTTP Port : 5000
Docker 로그인
docker login 서버IP:5000
11. 운영 시 권장 사항
메모리 증설
- Nexus는 Java 기반 서비스이므로 메모리 부족 시 매우 느려질 수 있습니다.
environment:
- INSTALL4J_ADD_VM_PARAMS=-Xms2g -Xmx2g
데이터 백업
tar czvf nexus-backup.tar.gz nexus-data/
로그 확인
docker compose logs -f nexus3
728x90
'리눅스' 카테고리의 다른 글
| [WIP] 파이썬 가상 환경을 구성하고 설정하는 방법 (0) | 2026.04.14 |
|---|---|
| [WIP] PHP 슈퍼 글로벌 변수 (0) | 2026.04.14 |
| [WIP] PHP에서 웹 서버의 환경 변수를 가져와서 사용하는 방법 (0) | 2026.04.14 |
| [WIP] Telegraf 에이전트 설치(Telegraf data collector) (0) | 2026.04.14 |
| [WIP] SSL 인증서를 PFX에서 JKS로 변환하는 방법 (0) | 2026.04.14 |