«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Tags more
Archives
Today
Total
12-28 16:41
관리 메뉴

+1-1+1-1+1-1+1-1...

Centos 7 Sonatype Nexus Repository 설치하기 본문

Linux/CI & CD

Centos 7 Sonatype Nexus Repository 설치하기

투명인간 2021. 2. 17. 20:11
728x90

Installing Sonatype Nexus Repository OSS on CentOS 7 | FOSS Linux

 

Install Sonatype Nexus Repository OSS on CentOS | FOSS Linux

In this tutorial, we will provide you a comprehensive guide on setting up Sonatype Nexus Repository OSS version on CentOS 7.

www.fosslinux.com

1. 사전 환경 세팅 - jdk 확인, 없을 경우, 지원 버전 확인 후 설치 

[root@localhost ~]# yum list installed | grep open*jdk 
java-1.8.0-openjdk.x86_64             1:1.8.0.282.b08-1.el7_9          @updates 
java-1.8.0-openjdk-headless.x86_64    1:1.8.0.282.b08-1.el7_9          @updates

 

2. 넥서스 최신버전 다운로드 및 설치

[root@localhost opt]# wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz

--2021-02-17 21:02:58--  https://download.sonatype.com/nexus/3/latest-unix.tar.gz

Resolving download.sonatype.com (download.sonatype.com)... 52.8.13.26, 52.9.54.207

Connecting to download.sonatype.com (download.sonatype.com)|52.8.13.26|:443... connected.

HTTP request sent, awaiting response... 302 Moved Temporarily

Location: https://sonatype-download.global.ssl.fastly.net/repository/downloads-prod-group/3/nexus-3.29.2-02-unix.tar.gz [following]

--2021-02-17 21:03:01--  https://sonatype-download.global.ssl.fastly.net/repository/downloads-prod-group/3/nexus-3.29.2-02-unix.tar.gz

Resolving sonatype-download.global.ssl.fastly.net (sonatype-download.global.ssl.fastly.net)... 151.101.89.194

Connecting to sonatype-download.global.ssl.fastly.net (sonatype-download.global.ssl.fastly.net)|151.101.89.194|:443... connected.

HTTP request sent, awaiting response... 200 OK

Length: 162406548 (155M) [application/x-gzip]

Saving to: latest-unix.tar.gz

100%[============================================================================================================================>] 162,406,548 1.76MB/s   in 88s

2021-02-17 21:04:34 (1.76 MB/s) - latest-unix.tar.gz saved [162406548/162406548]

[root@localhost opt]# tar -xvzf latest-unix.tar.gz

….

nexus-3.29.2-02/system/org/tukaani/xz/1.8/xz-1.8.jar

nexus-3.29.2-02/system/org/yaml/snakeyaml/1.26/snakeyaml-1.26.jar

nexus-3.29.2-02/system/se/sawano/java/alphanumeric-comparator/1.4.1/alphanumeric-comparator-1.4.1.jar

nexus-3.29.2-02/system/settings.xml

nexus-3.29.2-02/system/uk/org/lidalia/sysout-over-slf4j/1.0.2/sysout-over-slf4j-1.0.2.jar

sonatype-work/nexus3/clean_cache

sonatype-work/nexus3/log/.placeholder

sonatype-work/nexus3/orient/plugins/studio.zip

sonatype-work/nexus3/tmp/.placeholder

[root@localhost opt]# ls -al

합계 158604

drwxr-xr-x.  4 root root        76  2 17 21:09 .

dr-xr-xr-x. 17 root root       224  2 17 09:06 ..

-rw-r--r--.  1 root root 162406548  1  7 11:45 latest-unix.tar.gz

drwxr-xr-x.  9 root root       163  2 17 21:09 nexus-3.29.2-02

drwxr-xr-x.  3 root root        20  2 17 21:09 sonatype-work

 

3. Nexus 계정 생성 및 권한 설정

[root@localhost opt]# useradd --system --no-create-home nexus

[root@localhost opt]# chown -R nexus:nexus nexus-3.29.2-02

[root@localhost opt]# chown -R nexus:nexus sonatype-work

[root@localhost opt]# vim /opt/nexus-3.29.2-02/bin/nexus.rc

run_as_user="nexus"

 

4. Nexus 호스트 IP 설정 (ngix를 프락시로 두지 않을 것이기 때문에 위에 링크 내용과 달리 실제 IP를 세팅함)

[root@localhost opt]# vim /opt/nexus-3.29.2-02/etc/nexus-default.properties

## DO NOT EDIT - CUSTOMIZATIONS BELONG IN $data-dir/etc/nexus.properties

##

# Jetty section

application-port=8081

application-host=192.168.60.22

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

 

5. Nexus 설정, 데이터 Directory 세팅 확인

[root@localhost opt]# vim /opt/nexus-3.29.2-02/bin/nexus.vmoptions

-Xms2703m

-Xmx2703m

-XX:MaxDirectMemorySize=2703m

-XX:+UnlockDiagnosticVMOptions

-XX:+LogVMOutput

-XX:LogFile=../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=../sonatype-work/nexus3

-Dkaraf.log=../sonatype-work/nexus3/log

-Djava.io.tmpdir=../sonatype-work/nexus3/tmp

-Dkaraf.startLocalConsole=false

 

 

6. nexus user의 파일 오픈 제한 설정 (옵션 사항으로 보임)

[root@localhost opt]# vim /etc/security/limits.conf

nexus - nofile 65536

 

6. Nexus 시스템 자동 서비스 등록

[root@localhost opt]# vim /etc/systemd/system/nexus.service

[Unit]

Description=Nexus Service

After=syslog.target network.target

 

[Service]

Type=forking

LimitNOFILE=65536

ExecStart=/opt/nexus-3.29.2-02/bin/nexus start

ExecStop=/opt/nexus-3.29.2-02/bin/nexus stop

User=nexus

Group=nexus

Restart=on-failure

 

[Install]

WantedBy=multi-user.target

[root@localhost opt]# systemctl daemon-reload

[root@localhost opt]# systemctl enable nexus.service

[root@localhost opt]# systemctl start nexus.service

 

7. 서비스 시작 모니터링 처음 시작 후 바로 로그 생성되는데 시간이 걸리는 것인지?, 원인 모를 이유로 재시작 후 서비스 로딩 로그가 나타나기 시작함

[root@localhost log]# tail -f /opt/sonatype-work/nexus3/log/nexus.log

….

2021-02-17 21:43:57,088+0900 INFO  [jetty-main-1]  *SYSTEM org.eclipse.jetty.server.AbstractConnector - Started ServerConnector@174639e0{HTTP/1.1, (http/1.1)}{192.168.60.22:8081}

2021-02-17 21:43:57,089+0900 INFO  [jetty-main-1]  *SYSTEM org.eclipse.jetty.server.Server - Started @194359ms

2021-02-17 21:43:57,089+0900 INFO  [jetty-main-1]  *SYSTEM org.sonatype.nexus.bootstrap.jetty.JettyServer -

-------------------------------------------------

 

Started Sonatype Nexus OSS 3.29.2-02

 

-------------------------------------------------

2021-02-17 21:44:19,502+0900 WARN  [Timer-0]  *SYSTEM java.util.prefs - Could not lock User prefs.  Unix error code 2.

2021-02-17 21:44:19,502+0900 WARN  [Timer-0]  *SYSTEM java.util.prefs - Couldn't flush user prefs: java.util.prefs.BackingStoreException: Couldn't get file lock.

2021-02-17 21:44:49,503+0900 WARN  [Timer-0]  *SYSTEM java.util.prefs - Could not lock User prefs.  Unix error code 2.

2021-02-17 21:44:49,503+0900 WARN  [Timer-0]  *SYSTEM java.util.prefs - Couldn't flush user prefs: java.util.prefs.BackingStoreException: Couldn't get file lock.

2021-02-17 21:45:05,743+0900 INFO  [qtp709013400-47]  *UNKNOWN org.apache.shiro.session.mgt.AbstractValidatingSessionManager - Enabling session validation scheduler...

2021-02-17 21:45:05,797+0900 INFO  [qtp709013400-47]  *UNKNOWN org.sonatype.nexus.internal.security.anonymous.AnonymousManagerImpl - Using default configuration: OrientAnonymousConfiguration{enabled=true, userId='anonymous', realmName='NexusAuthorizingRealm'}

중간에 경고 메시지가 나오는데 제대로 설치된 것인지 모르겠음..ㅜㅜ

 

8. 페이지 확인 - 일단 열림....

9. 계정 등록 및 비밀 번호 변경

우측 상단 Sigin in 클릭 시 아래 팝업 창이 나타남

설명대로 해당 파일 조회 후 입력

[root@localhost log]# cat /opt/sonatype-work/nexus3/admin.password
577157f0-633a-43f0-8cd8-aa06c6617d7a

Next 클릭

신규 비밀번호 입력

익명 접근 허용 차단 - 보안상 이게 맞는 듯...

설치 완료

반응형