기타

Nexus Repository 설치

DevStory 2020. 9. 15.

소개

Maven에 대해 어느정도 이해하고 계신다는 가정하에 글을 작성합니다.

 

회사에서 업무 도중 공통적으로 사용하는 라이브러리들을 어떻게 관리하고 있는지 궁금해졌습니다.

여러가지 파일들을 훑어보는데, 『 Nexus 』 란게 보였고, Nexus로 파일들을 관리하고 있다는 것을 알았습니다.

 

Nexus는 메이븐에서 사용할 수 있는 프로젝트 저장소입니다.

대부분 학교 및 학원에서는 mvnrepository.com/ 에서 무료로 제공하고 있는 라이브러리를 사용하고 있을 겁니다.

 

Nexus를 사용할 경우 회사 또는 팀내에서 개발하는 라이브러리들을 회사 또는 팀내에서 관리 및 공유가 가능합니다.

 

그리고 무료로 지원합니다!


준비작업

 

 Java JDK 사전 설치(Java 8버전 이상)

 다운로드 : https://www.sonatype.com/download-oss-sonatype

 

Download Repository OSS

Download Nexus Repository OSS | The world's first and only universal repository solution that's FREE to use.

www.sonatype.com


다운로드

▶ PC 운영체제와 동일한 설치파일 다운로드 받습니다.

 다운로드 링크

 3.14버전 이하는 보안에 취약합니다.

 다운로드 받는 버전은 3.27.0-03 버전입니다. 


설치

 

 폴더명에 한글 포함되어 있으면, nexus 실행시 에러가 발생합니다.

 nexus 파일을 관리할 폴더는 영문으로 되어야합니다.

 다운로드 받은 압축파일 해제하면, nexus-3.27.0-03, sonatype-work 폴더가 생깁니다.

 

 nexus-3.27.0-03/etc/nexus-default.properties 파일에서 포트나 기본적인 설정 사항을 변경할 수 있습니다.

 nexus-3.27.0-03/bin/nexus.vmoptions 파일에서 로그파일 경로 및 기타 설정사항을 변경할 수 있습니다.

-Xms2703m
-Xmx2703m
-XX:MaxDirectMemorySize=2703m
-XX:+UnlockDiagnosticVMOptions
-XX:+LogVMOutput
-XX:LogFile=C:/NEXUS/sonatype-work/nexus3/log/jvm.log
-XX:-OmitStackTraceInFastThrow
-Djava.net.preferIPv4Stack=true
-Dkaraf.home=.
-Dkaraf.base=.
-Dkaraf.etc=etc/karaf
-Djava.util.logging.config.file=etc/karaf/java.util.logging.properties
-Dkaraf.data=C:/NEXUS/sonatype-work/nexus3
-Dkaraf.log=C:/NEXUS/sonatype-work/nexus3/log
-Djava.io.tmpdir=C:/NEXUS/sonatype-work/nexus3/tmp
-Dkaraf.startLocalConsole=false
#
# additional vmoptions needed for Java9+
#
# --add-reads=java.xml=java.logging
# --add-exports=java.base/org.apache.karaf.specs.locator=java.xml,ALL-UNNAMED
# --patch-module=java.base=lib/endorsed/org.apache.karaf.specs.locator-4.2.9.jar
# --patch-module=java.xml=lib/endorsed/org.apache.karaf.specs.java.xml-4.2.9.jar
# --add-opens=java.base/java.security=ALL-UNNAMED
# --add-opens=java.base/java.net=ALL-UNNAMED
# --add-opens=java.base/java.lang=ALL-UNNAMED
# --add-opens=java.base/java.util=ALL-UNNAMED
# --add-opens=java.naming/javax.naming.spi=ALL-UNNAMED
# --add-opens=java.rmi/sun.rmi.transport.tcp=ALL-UNNAMED
# --add-exports=java.base/sun.net.www.protocol.http=ALL-UNNAMED
# --add-exports=java.base/sun.net.www.protocol.https=ALL-UNNAMED
# --add-exports=java.base/sun.net.www.protocol.jar=ALL-UNNAMED
# --add-exports=jdk.xml.dom/org.w3c.dom.html=ALL-UNNAMED
# --add-exports=jdk.naming.rmi/com.sun.jndi.url.rmi=ALL-UNNAMED
#
# comment out this vmoption when using Java9+
#
-Djava.endorsed.dirs=lib/endorsed

-XX:LogFile

-Dkaraf.data

-Dkaraf.log

-Djava.io.tmpdir

 

위 4개의 경로를 수정한 내용입니다.

세부 내용은 저도 공부가 더 필요합니다.


실행

 cmd를 관리자 모드로 실행하여 nexus-3.27.0-03/bin/ 으로 이동합니다.

 명령어는 아래와 같습니다.

명령어 도움

nexus /help



설치

nexus /install



제거

nexus /uninstall



상태 확인

nexus /status



실행

nexus /start

접속

localhost:8081로 접속합니다.

만약, nexus-default.properties 파일에서 포트번호를 변경했다면, 8081이 아닌 변경한 포트로 접속합니다.

 

아이디는 admin

현재 버전의 초기 비밀번호는 admin123이 아니라 sonatype-work\nexus3 폴더의 admin.password 파일의 있는 내용을 복사하여 접속하면 됩니다.

 

접속 후 비밀번호 변경할 수 있으며, 비밀번호 변경시 admin.password 파일은 삭제됩니다.

반응형

댓글