Spring - 폐쇄망 Nexus - 설치, 설정, 호스트 리파지토리 생성 (1/3)

반응형

 

포스팅에 사용된 시스템 정보

  • OS : Windows
  • Nexus : nexus-3.45.0-01
  • STS : 4.17

넥서스

넥서스란? (Nexus)

  • Nexus Repository OSS의 공식 설명
    • 범용 형식을 지원하는 무료 아티팩트 저장소
    • 범용 리파지토리 지원
    • 개인 호스팅 저장소
  • 사설 리파지토리 저장소로 내부망(폐쇄망)에서 외부 인터넷을 사용할 수 없을 때 주로 사용
    • 인터넷을 사용 할 수 없어서 라이브러리를 다운받을 수 없을 때
    • 팀원들과 함께 공용으로 사용하는 라이브러리를 공유 할 때

Nexus 3 다운로드

https://help.sonatype.com/repomanager3/product-information/download

 

Download

Nexus Repository OSS is distributed with Sencha Ext JS pursuant to a FLOSS Exception agreed upon between Sonatype, Inc. and Sencha Inc. Sencha Ext JS is licensed under GPL v3 and cannot be redistributed as part of a closed source work.

help.sonatype.com


Nexus 실행

  • 다운 받은 파일 압축 해제

  • nexus 폴더 - bin 이동

 

  • 해당 경로에서 경로 표시줄을 클릭하고 'cmd' 입력 - 엔터

 

  • 해당 경로로 cmd 실행

 

  • 넥서스 실행 명령어 입력
nexus.exe /run

 

  • 아래의 문구가 뜨면 정상적으로 넥서스가 실행된 것


넥서스 리파지토리

로컬 서버에 접속

http://localhost:8081/

 

  • 리파지토리 관리자 접속 화면


로그인  에러

  • 넥서스 3.17 이후 버전은 admin123이 아닌 기본 설정 비밀번호가 없는 상태로 설치
  • 그렇기 때문에 admin / admin123 으로 로그인해도 로그인을 할 수 없음
Error) Incorrect username or password, or no permission to use the application.


사용자 로그인, 접속 설정

  • '넥서스가 설치된 폴더 - sonatype-work-nexus3' 경로로 이동

 

  • admin.password 파일을 메모장으로 열기 - 문자열을 복사 
    • 해당 문자열은 유저의 비밀번호가 암호화 된 것

 

  • (넥서스 리파지토리 관리자 페이지에서) 우측 상단의 Sign In
    • ID : admin
    • Password : 복사한 문자열 붙여넣기
    • Sign in

 

  • 정상적으로 로그인 된 화면
    • Next를 클릭하면 새로운 비밀번호를 입력하는 창 출력

 

  • admin 계정의 새로운 비밀번호 입력 - Next
    • 저는 기본 비밀번호로 사용되는 'admin123' 으로 설정하였습니다.

 

  • 익명 접근 설정 (Configure Anonymous Access)
    • Enable Anonymous Access : 익명 액세스 허용 (자격 증명 없이 액세스)
    • Disable Anonymous Access : 익명 액세스 허용 안함 (자격 증명이 있어야 액세스)
    • 원하는 옵션 선택 - Next
      • 해당 포스팅에서는 'Disable Anonymous Access' 옵션 선택 

 

  • 설정 완료


리파지토리 생성하기 (저장소)

  • 1. 상단 중앙에 있는 설정 아이콘 클릭
  • 2. 좌측의 메뉴에서 Repository - Repositories
  • 3. Create repository

 

  • group : 여러 리파지토리를 그룹화함 (hosted + proxy)
    • 추가 클라이언트 측 구성 없이 리파지토리 관리자에서 사용자에게 모든 메이븐 리파지토리를 노출
    • 여러 프록시 및 호스팅된 리파지토리의 집계하여 볼 수 있음
  • hosted : 내부 라이브러리 저장소, 사설 저장소
    • 호스팅된 메이븐 리파지토리를 사용하여 자체 및 타사 구성 요소를 배포
  • proxy : 공개 오픈 소스 리파지토리와 같은 저장소를 간접적으로 접속
    • Maven Central, npm과 같은 공개 오픈 소스 리파지토리의 구성 요소를 사용한 저장소

 

 

  • 스냅샷 리파지토리 생성
    • Name : 원하는 이름 -snapshot
    • Version Policy : Snapshot
    • Deployment policy : Allow redeploy
    • Create repository

 

  • 릴리즈 리파지토리 생성
    • Name : 원하는 이름 -Release
    • Version Policy : Release
    • Deployment policy : Disable redeploy
    • Create repository

 

  • release/snapshot 리포지터리 생성 확인


접근 권한 설정하기 (Role)

(좌측 메뉴에서) Security - Roles - Create Role

 

  • Role Type - Nexus role

 

  • Role Setup
    • Role ID : 룰의 이름 정의
    • Role Name : 룰의 이름 정의
    • Role Description : 룰에 대한 설명

 

  • 권한 설정
    • 생성한 호스트 리파지토리 이름 입력 - Transfer All

 

  • 해당 호스트 리파지토리의 권한을 모두 추가한 화면

 

  • Save

 

  • 룰 추가 확인 화면


사용자 추가하기 (Users)

  • (좌측 메뉴에서) Users - Create local user

 

  • Users 정보 입력 - Create local user
    • ID : 사용할 유저 아이디
    • First/Last name : 성 이름
    • Email : 이메일
    • Password/Confirm password : 비밀번호
    • Status : Active
    • Roles : 위에서 만든 룰을 Granted로 이동

 

  • 유저 생성 확인


참고

  • sonatype.com

https://help.sonatype.com/repomanager3/nexus-repository-administration/formats/maven-repositories

 

Maven Repositories

You can change the default column order in the search and browse user interfaces to the familiar order of Group (groupId), Name (artifactId) and Version. Simply drag the Group column from the middle to the left using the header. This setting will be

help.sonatype.com

 

반응형