Among Us - Yellow Crewmate [Nexus] Nexus Repository 설치하기

기타

[Nexus] Nexus Repository 설치하기

감쟈! 2021. 9. 6. 16:26

https://help.sonatype.com/repomanager3/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 repository 다운받는 공식 사이트

 

 

 

 

 

0. Nexus Repository 란 ?

 

Nexus Repository는 Maven에서 사용할 수 있는 오픈소스 Repository 중 하나이다.

 

프로젝트를 진행하면서 외부 레포지토리에 접근하기 어려울 때가 있기 때문에, 사내망에 프로젝트에 필요한 라이브러리를 다운받을 수 있도록 해줘야 한다. Nexus Repository는 사내 레포지토리로 사용할 수 있으며, 외부 인터넷이 느리다거나 외부 레포지토리가 마비되는 상황이 발생하더라도 빠르게 받을 수 있다.

 

또한, 공통으로 사용하는 라이브러리 등이 존재하기 때문에 nexus Repository에 라이브러리를 올려서 팀간의 공유가 가능하다.

 

Nexus Repository는 Docker나 Helm 같이 다양한 것들도 지원해준다.  

 

 

 

 

 

 

1. Nexus repository 다운로드

 

Nexus Repository는 JDK를 필요로 하기 때문에 Nexus를 설치하기 전에 먼저 1.8버전 이상의 jdk를 설치해주자.

$ sudo yum install -y java-1.8.0

 

wget으로  nexus3 의 가장 최신버전을 다운받아주자.

$ wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz

 

다운받은 tar파일의 압축을 해제해준다.

$ tar -xvzf latest-unix.tar.gz

 

공식 가이드에는 홈 디렉토리에서 nexus를 실행시키는 것을 권장하지 않기 때문에 압축해제 후 생성된 2개의 디렉토리를 /opt 로 옮겨준다.

$ mv nexus-3.34.0-01 /opt/nexus
$ mv sonatype-work /opt

 

 

2. nexus 사용자 생성

 

nexus는 root 사용자로 실행하는 것을 권장하지 않기 때문에, nexus 사용자를 새로 만들어주자

$ sudo useradd nexus

 

nexus 사용자가 nexus를 실행할 때 패스워드를 묻지 않도록 설정해준다.

$ visudo

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
nexus   ALL=(ALL)       NOPASSWD:ALL

 

nexus 사용자에게 권한도 부여해주자

$ sudo chown -R nexus:nexus /opt/nexus
$ sudo chown -R nexus:nexus /opt/sonatype-work

 

nexus 사용자로 실행하기 위해서 vi /opt/nexus/bin/nexus.rc 파일을 수정해주자

$ run_as_user="nexus"

 

 

3. Nexus 실행하기

 

Nexus가 부팅 시 자동으로 실행되게끔 /etc/init.d에 등록해주자.

$ sudo ln -s /opt/nexus/bin/nexus /etc/init.d/nexus

 

Nexus 포트 설정은 /opt/nexus/etc/nexus-default.properties 파일에서 할 수 있다.

$ vi /opt/nexus/etc/nexus-default.properties


## DO NOT EDIT - CUSTOMIZATIONS BELONG IN $data-dir/etc/nexus.properties
##
# Jetty section
application-port=8081
application-host=0.0.0.0
nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xml
nexus-context-path=/

# Nexus section
nexus-edition=nexus-pro-edition
nexus-features=\
 nexus-pro-feature

nexus.hazelcast.discovery.isEnabled=true

 

 nexus 실행 후 http://<IP>:8081 로 접속.

(접속하기 위해서 8081 포트 허용)

$ /etc/init.d/nexus start

 

 

Nexus에 관리자로 로그인하기 위해서 ID/PW가 필요하다.

 

ID는 admin

PW는 /opt/sonatype-work/nexus3/admin.password 파일에서 확인이 가능하다.

$ cat /opt/sonatype-work/nexus3/admin.password 
14c30ca6-5f4b-4b98-a246-937b61628b2d

 

 

admin 계정으로 로그인하게 되면 상단의 설정메뉴가 보이게 된다.