[Maven] Nexus란?
by youngjun._.
Nexus란?
- Sonatype 에서 만든 저장소 관리자 프로젝트
- 다양한 Format의 사설 저장소를 만들 수 있으며 메인 저장소를 Cache 할 수 있는 기능 또한 제공하여 저장소를 관리할 수 있도록 도와주는 관리자 도구
- Maven 에서 사용할 수 있는 가장 널리 사용되는 무료 저장소
1️⃣ 필요성
사설 리포지토리가 왜 필요할까?
- 회사/단체의 화이트 리스트로 인해 외부 리포지토리에 접속하기 어려운 경우 Proxy 역할
- 특히 비상시 외부 인터넷이 느리거나 리포지토리가 다운되는 등 여러 상황에서도 빠르게 받을 수 있음
- 현재 Maven에 올라와 있지 않은 자료들은 효율적으로 관리하기 위하여
- 한번 다운로드 받은 dependency는 로컬에 저장되어서 협업 시 다른 PC에도 설치해야 함
- 서버에도 동일한 설정들을 해줘야 함으로 서버 구조가 복잡할수록 잔업 증가
- 예외 파일로 인한 설정이 줄어들어 전체적인 일관성이 증가
- 개발팀에서 사용하는 공통 라이브러리들을 공유
- 특정 솔루션을 사용하기 위한 3rd Party 라이브러리의 관리
2️⃣ Nexus 2.X → 3.X
- Nexus 3는 아키텍처와 기능을 완전히 새로 작성하여 성능 및 사용성 개선을 하였고, 더 많은 Format을 지원하며, 2016년 4월 릴리즈
- 아키텍처와 기능을 완전히 새로 작성하여 만들어졌기 때문에 2.X 버전과의 동등성과 하위호환성이 보장되지 않음
- Maven, Yum 이외에 Docker, npm, Ruby Gems 등 지원 포맷 확장
2.x 버전에서 3.x 버전으로 업그레이드 한다면 (Nexus Repository Manager 2.x to 3.x Feature Equivalency) 를 참고
3️⃣ Nexus 3 설치
공식 문서만 잘 따라하면 된다.
- 공식 문서에서 제공하는 압축 파일을 통해 설치 및 실행하는 방법
- Docker 이미지로 설치 및 실행하는 방법
참고 : Nexus로 docker Registry 관리하기
Reference
'Back-End > Java' 카테고리의 다른 글
Java : Stream 문자열 배열 정렬(내림차순, compareTo 재구현) (0) | 2022.03.26 |
---|---|
[Java8] 인터페이스는 어떻게 변화했을까 (0) | 2021.11.19 |
[Java] Scanner 정리 (0) | 2020.10.28 |
[Java] Generic Class (0) | 2020.10.27 |
Maven이란? (설치 + IntelliJ 연동) (0) | 2020.10.15 |
블로그의 정보
개발하는만두
youngjun._.