본문 바로가기
IT/Applications

Nexus Repository 구성하기 -2 (CentOS Yum Repository 구성편)

by 촌초니 2023. 1. 1.

Nexus를 설치했으니 실제 yum repository 구성을 해보자.

 

admin계정으로 접속하면 상단 아이콘에서 톱니바퀴 모양의 아이콘을 확인할 수 있는데 이 곳에서 yum이나 여러 proxy 구성을 하면 된다.

지금은 yum repository구성을 하기 위해서 Repository 메뉴를 사용할 예정이다.

CentOS Yum Repository구성을 위한 Nexus 서버 설정

Create repository 를 클릭한 후 "Yum(Proxy)"을 선택한다.

그리고 항목을 하나씩 정의한다.

  • Name : yum-centos
  • Remote Storage : http://mirror.kakao.com/centos/

간단한 테스트를 위한 구성이기때문에 나머지 항목은 Default로 하고 생성한다.

그러면 아래와 같이 새로 생긴 yum-centos라는 Repository가 보인다.

그리고 상단 네모상자를 클릭하여 Browse에 가보면 동일하게 yum-centos가 확인되고

이 yum-centos를 눌러보면 아래처럼 아무런 내용이 없다고 메시지가 나온다.

그리고 기본적으로 Anonymous Access가 허용되어있지 않기 때문에 user를 생성하고 해당 user의 권한으로 Client repository설정을 해야하지만, 테스트이니까 그냥 Anonymous Access를 허용해준다. (운영에선 사용하지 말것)

 

이제 centos 서버에서 직접 이 yum-centos repository를 이용하여 패키지를 다운로드 받아보자.

 

Client 설정

/etc/yum.repos.d/test.repo 라는 파일을 생성하고 안의 내용은 아래와 같이 채우준다.

base url의 주소는 Nexus yum-centos repository의 url copy 버튼을 누르면 아래처럼 복사를 쉽게 할 수 있게 제공해준다.

 

위 Nexus설정시 "http://mirror.kakao.com/centos/"로 구성했기때문에 centos까지의 주소를 nexus주소+repository로 변경해주면 된다.

[base]
name=CentOS-$releasever - Base
baseurl=http://10.0.0.11:8081/repository/yum-centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#released updates
[updates]
name=CentOS-$releasever - Updates
baseurl=http://10.0.0.11:8081/repository/yum-centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
baseurl=http://10.0.0.11:8081/repository/yum-centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
baseurl=http://10.0.0.11:8081/repository/yum-centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

yum repolist 를 하게되면 패키지 정보를 읽어오게되고, 실제 Nexus repository에도 다운로드 된 것을 확인할 수 있다.

그리고 패키지를 설치하게되면 Nexus내에 cache로 저장하기도 한다.

bc 패키지 설치
bc 패키지에 대한 nexus저장