Free at 4:00P.M

[Nexus] Sonatype Nexus 설치 및 초기 설정(1) 본문

Programming Tool/Maven

[Nexus] Sonatype Nexus 설치 및 초기 설정(1)

free4pm 2015. 3. 7. 02:48

2015-03-07 초기 작성


안녕하세요.

이번 포스팅에서는 Sonatype Nexus를 설치하고 

초기 설정을 해보겠습니다.


Sonatype Nexus는 Maven을 지원하는 Repository Manager라고 할 수 있습니다. 

가장 널리 알려지고 많이 쓰여지는 것으로 알고 있습니다.


먼저 설치파일을 다운받기 위해 Sonatype Nexus 사이트로 이동합니다. 

검색 해 보니 사이트가 두 군대가 있는데... 


www.sonatype.org와 www.sonatype.com


머 상관없이.. 들어가면 메뉴에 nexus제품을 클릭하면 됩니다. 

들어가면 nexus oss제품과 nexus pro제품 두 가지가 있는데...

보면 OSS(Open Source Software)는 오픈소스로 무료제품이고 PRO는 유료제품으로 기능이 더욱 많은 듯 하네요.


일단 무료제품을 사용하기 위해 nexus oss를 다운로드 받습니다. 

또한 문서가 워낙 잘 되어 있으므로 필히 문서를 다운로드 받습니다. 

단, 영어라는... 헉4


전 CentOS에 설치하기 위해 NEXUS OSS(TGZ)를 다운로드 받습니다. 

다운로드 받은 파일을 설치 할 서버로 이동시킨 후 서버로 이동합니다. 


서버에서 먼저 nexus계정을 하나 생성합니다. 

nexus는 실행 시 root로의 실행을 막고 있습니다. 

강제로 실행하면 머 할 수는 있지만 경고가 뜹니다.

왜인지는 잘 모르겠지만... 아마 보안문제나 머 그런 것일꺼 같은데... 흠...


여튼 nexus계정을 생성하고 해당 계정으로 로그인 한 후 설치할 경로로 파일을 복사 한 후 

tgz파일의 압축을 풉니다. 


1
tar xvzf nexus-x.xx.x-xx-bundle.tar.gz 
cs


압축이 풀린 것을 확인해 보면 

nexus-x.xx.x-xx 

sonatype-work

두 개의 디렉토리가 보입니다. 

이러면 기본적인 설치는 끝난 것 입니다. 


추가사항

nexus-x.xx.x-xx 디렉토리는 한마디로 nexus 서버의 디렉토리이며

sonatype-work 디렉토리는 nexus 서버에서 사용하는 maven repository manager 디렉토리라고 

생각하면 편할 듯 합니다. 


일단 nexus버전과 상관없이(업그레이드 또는 다운그레이드) 사용을 하기 위해 

심볼릭 링크를 하나 만들어 줍니다. 


1
ln -s nexus-x.xx.x-xx nexus 
cs


업그레이드 방법

nexus의 신규버전이 나올 경우 위와 동일한 방법으로 설치를 하면 됩니다. 

신규 버전 파일의 압축을 풀면 동일하게 nexus-x.xx.x-xx 신규버전 디렉토리가 생성됩니다. 

단, sonatype-work폴더는 기존 디렉토리가 유지가 되므로 

실제 nexus 서버만 업그레이드 되는 것이며 기존에 사용하던 repository설정이나 파일들은 그대로 사용하시면 됩니다. 


설정사항

먼저 nexus서버의 기본 실행 환경을 설정하기 위해 

nexus/conf/nexus.properties 파일을 엽니다. 

1
2
3
4
5
6
7
8
9
# Jetty section
application-port=8081
application-host=0.0.0.0
nexus-webapp=${bundleBasedir}/nexus
nexus-webapp-context-path=/
 
# Nexus section
nexus-work=${bundleBasedir}/../sonatype-work/nexus
runtime=${bundleBasedir}/nexus/WEB-INF
cs


위에서 자신의 환경에 맞게 변경합니다. 

보통 서버와 저장소를 분리하기 위해 nexus-work 디렉토리를 다른 곳으로 변경하는 경우가 있습니다. 

그 때 nexus-work에 디렉토리를 설정하면 됩니다. 

그 외 별로 어려운 설정은 없으므로 설명은 생략합니다. 


nexus서버의 java설정은 nexus/bin/jsw/conf/wrapper.conf 파일에서 설정합니다.

설정 보면서 자신에게 맞게 설정하면 될 듯 합니다. 

전 아래 사항정도만 맞춰줬습니다. 

(ebook에서 언급되어 있길래;; 머 쓰다가 메모리가 모자르거나 느리거나 하면 그 때 조정해도 될 듯 합니다. ㅎ)


1
2
3
4
5
# Size Java memory, in MB (-Xms)
wrapper.java.initmemory=512
# Size Java memory, in MB (-Xmx). This option only supports a setting up to 4000 (4Gb).
# If you need more, comment this option out and use an explicit wrapper.java.additional option with -Xmx
wrapper.java.maxmemory=2048
cs


머 이정도만 하고 서버를 올려보도록 하겠습니다. 


1
nexus/bin/nexus start 

cs


위 시작 스크립트를 지원하는 nexus의 스크립트는 

start, stop, restart, status, console 그리고 dump 명령어를 지원합니다.


브라우저에서 접속해 보도록 하겠습니다. 

초기 접속 계정은 

admin/admin123으로 설정되어 있습니다. 

물론 접속 후 바로 비밀번호를 변경해 주는 것은 필수입니다!


저는 머 이상 없이 아주 잘 접속됩니다. ㅎㅎ




감사합니다.