
목차
안녕하세요! 오늘은 소프트웨어를 쉽게 배포할 수 있도록 도와주는 Nexus 설치 및 설정 방법에 대해 소개하려 합니다.
Nexus는 저장소 관리자로서, 종속성을 프록시, 수집, 관리함으로써 JAR 파일들을 지속적으로 관리할 수 있게 해줍니다.
내부적으로 Nexus에 아티팩트를 게시하도록 빌드를 구성하면, 다른 개발자들이 해당 아티팩트를 사용할 수 있게 됩니다.
이 포스트는 리눅스에서 Nexus 설치하고 설정는 방법에 대한 가이드입니다.
Step1: Java 8 설치
Nexus를 실행하기 위해서는 리눅스 서버에 Java 8이상이 설치되어 있어야 합니다. 패키지 목록 업데이트를 한 후, Java 8을 설치해보겠습니다.
sudo dnf update -y
sudo dnf install java-1.8.0-openjdk-devel -y
설치가 완료된 후, 다음 명령어를 실행하여 Java 버전을 확인합니다.
# java -version
또한, 설치 경로를 알고 싶다면 다음 명령어를 실행해보세요.
<em># dirname $(dirname $(readlink -f $(which javac)))</em>
Step2: Nexus 설치
다음으로 Nexus 설치 파일을 가져와야 합니다. 저는 Sonatype 홈페이지에서 FreeOSS 버전을 다운 받아 리눅스 서버에 옮겼습니다.
# Nexus 파일을 /opt 위치로 이동하기
cp /파일경로 /opt
# 압축 해제
sudo tar -xvf latest-unix.tar.gz
# 파일명 변경
mv /opt/latest-unix /opt/nexus
Step3: Nexus 사용자 생성
Nexus를 안전하게 운영하기 위해 별도의 사용자를 생성하겠습니다. ‘nexus’라는 이름의 사용자를 생성하고 해당 사용자를 /opt/nexus 디렉토리의 소유자로 지정합니다.
sudo useradd -r -m -U -d /opt/nexus -s /bin/bash nexus
sudo chown -R nexus:nexus /opt/nexus
sudo chown -R nexus:nexus /opt/sonatype-work
Step4: Nexus를 서비스로 구성
Nexus를 시스템 서비스로 등록하면, 시스템 부팅 시 자동으로 Nexus가 실행되며, 필요에 따라 서비스를 시작/중지할 수 있습니다.
sudo vi /etc/systemd/system/nexus.service
그 다음, 아래의 내용을 입력하고 저장합니다.
[Unit]
Description=nexus service
After=network.target
[Service]
Type=forking
LimitNOFILE=65536
User=nexus
Group=nexus
ExecStart=/opt/nexus/bin/nexus start
ExecStop=/opt/nexus/bin/nexus stop
Restart=on-abort
[Install]
WantedBy=multi-user.target
Step5: Nexus 시작 및 확인
설정한 Nexus 서비스를 시작하고, 상태를 확인해봅시다.
sudo systemctl daemon-reload
sudo systemctl start nexus
sudo systemctl status nexus
Nexus가 정상적으로 작동하면 서비스를 시스템 부팅 시 자동으로 시작되도록 설정합니다.
sudo systemctl enable nexus
Step6: Nexus 접속
Nexus는 기본적으로 8081 포트에서 동작합니다. 이 포트를 방화벽에서 열어주어야 외부에서 Nexus에 접속할 수 있습니다.
sudo firewall-cmd --permanent --add-port=8081/tcp
sudo firewall-cmd --reload
이제 웹 브라우저를 통해 Nexus에 접속해보세요!
이상으로 Nexus Repository Manager의 설치 및 설정에 대한 가이드를 마치겠습니다. 이 포스트가 도움이 되었기를 바라며, 다음 포스트에서 뵙겠습니다!