Software Architect IT Devel Infra sonatype nexus - artifact 및 repository 관리 Current: Sonatype Nexus 설치 및 설정 Sonatype Nexus 설치 및 설정 Nexus Open Source 를 다운받고 설치하는 방법을 정리해 본다. Nexus OSS 2.6.x 설치Jetty 에 deployNexus 기본 설치 파일에는 Jetty 가 내장되어 있으므로 별도의 WAS 는 필요없다.Nexus 를 구동할 계정(ex: nexus) 으로 로그인한다.http://www.sonatype.org/nexus/go 에서 최신 버전의 zip 파일이나 tgz를 다운로드 (tomcat 이나 기타 WAS 에서 구동할 경우 WAR 파일을 받는다.) wget http://www.sonatype.org/downloads/nexus-latest-bundle.tar.gz CODE 다운받은 파일의 압축을 해제한다. tar zxvf nexus-2.6.3-01-bundle.tar.gz CODE sonatype-work 이란 폴더와 nexus-version 두 개의 폴더가 생성된다. nexus-version 폴더(ex: nexus-2.6.3-01) 로 이동한다. cd nexus-2.6.3-01 CODE vi conf/nexus.properties 하여 설정을 편집한다. $stringEscapeUtils.escapeHtml($body) BASH Apache httpd 와 nexus 를 mod_proxy 를 이용하여 연결할 때 SELinux 때문에 문제가 있을 경우 httpd mod_proxy 로 WAS 를 연결 실패 - (13)Permission denied 를 참고한다.bin/nexus start 로 구동한다.Browser 에서 http://localhost:8081/nexus 에 연결하여 설정한다. (nexus.properties를 수정했을 경우 변경 내용에 맞게 URL 을 기술한다.)WAR 로 tomcat 에 deploy 사전에 tomcat 이 설치되어 있어야 한다. nexus war 버전을 다운받는다. wget http://www.sonatype.org/downloads/nexus-latest.war CODE 다운받은 war 는 nexus-2.7.0-06.war 처럼 war 에 버전명이 붙어 있다. 편리한 deploy 를 위해 nexus.war 로 이름을 변경해서 tomcat 의 webapps 로 옮긴다. mv nexus-2.7.0-06.war webapps/nexus.war CODE tomcat 을 구동한다. bin/startup.sh CODE 80이나 443으로 nexus 를 사용하려면 apache 와 연계해야 한다. (참고 - apache httpd 와 tomcat 연동하기 - tomcat connector(mod_jk) , reverse proxy). 그렇지 않다면 다음과 같이 tomcat 의 포트로 연결한다. http://my-nexus-server:8080/nexus port 는 tomcat 의 conf/server.xml 의 <Connector port> 항목에 기술된 포트이다. sonatype-work 에 artifact 가 저장되므로 이 폴더를 백업해 주어야 한다. Nexus ProNexus 사용 버전을 사용하면 OSS 보다 다양한 기능과 기술 지원을 받을수 있다. 제일 저렴한것은 10 seat 라이센스이며 연 1,200 $ 이다. seat의 개념은 접속하는 client ip 이고 nexus 에 등록되는 계정의 수가 아님. 설치Nexus Pro 도 Nexus OSS와 설치는 동일하다. 설치후 sonatype 사에서 받은 라이센스 키파일을 입력해야 한다. 또는 관리자 로그인후 Administration -> Licensing 에서 입력할수도 있다.Pro 기능http://www.sonatype.com/nexus/nexus-pro-featuresArtifact Procument상용 SW 를 개발한다면 매우 유용할 기능이다. 현재 repository 에 있는 artifact 중 상용에 사용하기 적합하지 않은 license(ex: AGPL)를 가진 모듈이 있을 경우 알려준다. Repository Health Check현재 repository 에 있는 artifact중 보안 취약점이 있는 버전을 찾아서 보고해 준다.설정기본 admin 암호는 admin123 ×