윈도우11에 nexus 서버를 설치하고 레퍼지토리를 구축하는 방법

Nexus Repository Manager는 아티팩트 관리(Artifact Management)에 사용되는 매우 강력한 도구입니다. 일반적으로 기업 환경에서는 Linux 또는 Docker 컨테이너를 통해 배포하는 것이 가장 안정적이지만, Windows 11 환경에서도 충분히 구축할 수 있습니다.

아래는 Windows 11에 Nexus Repository Manager를 설치하고 레지스트리를 구축하는 단계별 상세 가이드입니다.


⚠️ 사전 경고 및 준비물 (Prerequisites)

Nexus는 자바(Java) 환경에서 작동합니다. 따라서 가장 먼저 **JDK(Java Development Kit)**를 설치하고 환경 변수를 설정하는 것이 핵심입니다.

📂 필요한 준비물

  1. JDK 설치: Nexus가 요구하는 버전의 Java Development Kit (예: OpenJDK 17 또는 21 LTS 버전)을 다운로드 및 설치합니다.
  2. 환경 변수 설정: 시스템의 JAVA_HOME 환경 변수를 JDK가 설치된 경로로 설정합니다.
  3. Nexus 다운로드: Sonatype 공식 웹사이트에서 사용하려는 Nexus Repository Manager 버전을 다운로드합니다 (ZIP 파일 형태).

🚀 1단계: 개발 환경 설정 (Environment Setup)

1. JDK 설치 및 환경 변수 설정

  1. JDK 설치: 다운로드한 JDK를 원하는 위치에 압축 해제합니다 (예: C:\Program Files\Java\jdk-21).
  2. 환경 변수 설정:
    • Windows 검색창에 “시스템 환경 변수 편집”을 검색하여 들어갑니다.
    • 시스템 변수(System Variables) 영역에서 Path 변수를 찾거나, 새 변수를 만듭니다.
    • JAVA_HOME 변수를 생성하고 값에 JDK의 루트 경로를 지정합니다. (예: C:\Program Files\Java\jdk-21)
    • Path 변수%JAVA_HOME%\bin 경로를 추가하여 시스템이 Java 실행 파일을 인식할 수 있도록 합니다.

2. Nexus 파일 배치

  1. 다운로드한 Nexus ZIP 파일을 시스템 드라이브의 안정적인 위치에 압축 해제합니다.
    • 추천 경로: C:\nexus
  2. 이 폴더가 향후 Nexus의 루트 디렉토리가 됩니다.

⚙️ 2단계: Nexus 서버 초기 실행 및 구동 (Initial Startup)

Nexus를 처음 실행할 때는 CLI(Command Line Interface)를 통해 수동으로 실행하여 문제가 없는지 확인하는 것이 좋습니다.

1. 명령 프롬프트 열기 (CMD)

  1. 시작 메뉴에서 CMD를 검색하여 관리자 권한으로 실행합니다.
  2. Nexus 폴더로 이동합니다. (예시: cd C:\nexus\nexus-*.jar)

2. Nexus 실행

Nexus는 보통 실행 가능한 JAR 파일을 제공합니다. 다음 명령어를 사용하여 Nexus를 실행합니다.

bash
java -jar nexus-*.jar

💡 예상되는 결과: 서버가 시작되면서 초기화 메시지와 함께 로그가 출력됩니다. 잠시 기다리면 서버가 준비되었다는 메시지(예: “Nexus started successfully”)와 함께 포트(기본 8081)가 활성화됩니다.

3. 웹 UI 접속 확인

  1. 웹 브라우저를 열고 다음 주소로 접속합니다. http://localhost:8081
  2. Nexus의 로컬 인스턴스가 성공적으로 실행되었다면, 초기 설정 화면 또는 로그인 페이지가 나타납니다.

🛡️ 3단계: 서버 구동 방식을 서비스화 (Service Setup)

개발/테스트 목적으로는 위와 같이 수동으로 실행해도 되지만, 서버로 운영할 목적이라면 Windows Service로 등록하여 시스템 부팅 시 자동으로 실행되게 하는 것이 필수입니다.

(💡 참고: 이 과정은 복잡할 수 있으므로, Nexus 공식 가이드나 서비스 런처 도구(예: Apache Procrun 등)의 도움을 받는 것을 추천합니다.)

간단한 팁: 서비스 등록이 어렵다면, CMD 창을 열고 로그인 후 해당 CMD 창을 최소화 상태로 켜두는 것이 임시 방편입니다.


🧪 4단계: 레포지토리 구축 및 설정 (Repository Setup)

웹 UI로 접속하여 관리자 계정으로 로그인한 후, 실제 프로젝트에서 사용할 레포지토리들을 구축해야 합니다.

1. 기본 레포지토리 구조 이해

Nexus는 아티팩트(라이브러리 파일)의 종류에 따라 레포지토리를 분리해야 합니다.

  • Hosted Repository: 개발자가 실제로 아티팩트(JAR, WAR 등)를 업로드하는 공간.
  • Proxy Repository: 외부 원격 레지스트리(예: Maven Central, npmjs.com)에서 아티팩트를 가져와 캐싱하는 공간.
  • Group Repository: 여러 개의 Hosted/Proxy 레포지토리를 묶어서 사용하는 통합 게이트웨이 역할.

2. 새로운 레포지토리 생성하기

  1. Nexus 웹 UI에서 왼쪽 메뉴의 Repositories 탭을 클릭합니다.
  2. Create repository 버튼을 클릭합니다.
  3. 레포지토리 타입 선택: 프로젝트에 맞는 타입을 선택합니다.

🔹 예시 1: Maven 레포지토리 생성 (가장 일반적)

  • 타입: maven2
  • 이름: my-company-maven
  • 설정: 레포지토리 ID를 지정하고 저장합니다.

🔹 예시 2: npm 레포지토리 생성

  • 타입: npm
  • 이름: my-company-npm
  • 설정: 저장합니다.

3. Proxy 레포지토리 설정 (외부 연결)

외부 라이브러리(예: Spring Boot의 라이브러리)를 다운로드하려면 Proxy가 필요합니다.

  1. Repositories 탭에서 **Create repository**를 클릭합니다.
  2. 타입: proxy를 선택합니다.
  3. 원격 URL(Remote URL) 입력: 캐싱할 외부 레지스트리의 주소를 입력합니다. (예: https://repo.maven.apache.org/maven2/)
  4. 저장: Proxy가 생성됩니다.

4. Group Repository 설정 (최종 단계)

윈도우11에 nexus 서버를 설치하고 레퍼지토리를 구축하는 방법

최종적으로 모든 것이 잘 작동하는지 테스트하고 외부 시스템(CI/CD 도구, 개발자 IDE 등)에서 이 주소만 바라보게 하려면 Group Repository를 만듭니다.

  1. Repositories 탭에서 **Create repository**를 클릭합니다.
  2. 타입: group을 선택합니다.
  3. 원격 레포지토리 추가: 앞서 만든 모든 Hosted, Proxy 레포지토리들을 이 Group 레포지토리 내부로 추가합니다.

🌟 요약 체크리스트

단계 항목 설명 완료 여부
준비 JDK 설치 시스템에 Java 개발 키트가 설치되어 있는지 확인합니다. $\square$
준비 환경 변수 JAVA_HOME 변수가 올바르게 설정되었는지 확인합니다. $\square$
설치 Nexus 배포 ZIP 파일을 압축 해제하고 실행 준비를 마칩니다. $\square$
실행 서버 구동 CMD를 통해 java -jar nexus-*.jar를 실행하여 8081 포트 접속을 테스트합니다. $\square$
관리 Hosted Repo 프로젝트 아티팩트를 올릴 Hosted 레포지토리를 생성합니다. $\square$
관리 Proxy Repo 외부 라이브러리를 캐싱할 Proxy 레포지토리를 생성합니다. $\square$
완료 Group Repo 모든 레포지토리를 묶는 Group 레포지토리를 생성합니다. $\square$

 

추가참고 : https://bbaek-gwi-story.tistory.com/33