설치 및 테스트한 날짜: 2023년 4월 12일
Harbor version: v2.7.0
아래 문서에 준비 작업, 설정, 설치 과정이 자세히 설명되어 있다. 세부적인 설정이 필요하다면 아래 문서를 읽어보는 것이 좋다.
https://goharbor.io/docs/2.7.0/install-config/
1) 사전 준비 작업
아래 Web docs에 Harbor 운영에 필요한 HW 스펙 및 Software, Network port 정보가 있다.
https://goharbor.io/docs/2.7.0/install-config/installation-prereqs/
특별한 내용이 없으니까, 간단하게 읽고 패쑤~
2) Harbor Installer 다운로드 받기
아래 Web docs에 Harbor installer를 다운로드할 수 있는 절차가 설명되어 있다.
특별한 내용이 없으니까, 설명되어 있는 명령을 따라서 수행하면 된다.
- 다운로드에 대한 설명 : https://goharbor.io/docs/2.7.0/install-config/download-installer/
- 설치 파일 저장소: https://github.com/goharbor/harbor/releases/tag/v2.7.0 (이 페이지의 제일 밑에 있는 링크를 사용)
- 실제 다운로드한 파일: https://github.com/goharbor/harbor/releases/download/v2.7.0/harbor-offline-installer-v2.7.0.tgz
나는 여러 설치 파일 중에서 'harbor-offline-installer-v2.7.0.tgz' 파일을 다운로드 받았다.
그리고 이 tgz 압축 파일을 풀어준다. (파일을 설정하고 실행하는 것은 뒤에서 다시 설명함)
3) Harbor 서버에 HTTPS Access하기 위한 인증서 만들기
OpenSSL 명령 도구를 잘 사용하는 사람이라면, 아래 Web docs의 예제 명령어를 조금 수정해서 수행하면 된다.
그런데 SSL 지식이 없거나 OpenSSL 명령 도구가 생소한 사람이라면, SSL을 공부하고 아래 Web docs 예제를 따라가는 것이 좋다.
https://goharbor.io/docs/2.7.0/install-config/configure-https/
내 경우, 위 문서의 예제 명령에서 "yourdomain.com" 부분만 실제 나의 internet domain name으로 변경하고 인증서를 만들었다.
4) 설정 파일 harbor.yaml 작성하기
위에서 다운로드한 'harbor-offline-installer-v2.7.0.tgz' 파일에 harbor.yml.tmpl 파일이 있다.
이 설정 파일을 내 상황에 맞게 편집하면 되는데, 솔직히 항목이 많고 설명을 읽어도 아리송한 부분이 있다.
내 경우는 전체 설정 항목 중에서 아래 예시와 같이 몇 개만 수정했다.
##
## 설정 Template 파일을 복사
##
$ cp harbor.yml.tmpl harbor.yml
##
## 설정 파일을 편집하기
##
$ vi harbor.yml
... 중간 생략 ...
hostname: registry.sejong-world.kr
... 중간 생략 ...
https:
port: 443
certificate: /data/cert/sejong-world.kr.crt
private_key: /data/cert/sejong-world.kr.key
harbor_admin_password: MyNewPass56789
$
5) 설치 Script 실행하기
아래 Web docs에 설명이 잘 되어 있어서 따라 하기만 해도 잘 설치된다.
https://goharbor.io/docs/2.7.0/install-config/run-installer-script/
단, 설치하는 방식에 따라 여러 옵션을 사용할 수 있는데 나는 Chart repository 서비스도 사용할 거라서
아래와 같이 --with-chartmuseum 옵션을 추가했다.
이 옵션으로 설치하면, container image registry와 chart repository 서비스를 모두 사용할 수 있다.
$ sudo ./install.sh --with-chartmuseum
위 옵션을 지정한 것 외에는 나머지 모든 설치 및 기동 종료 절차는 Web docs와 완전히 동일하게 수행했다.
문서의 설명이 간단했고, 따라만 해도 에러없이 설치가 술술 잘 되어서 부연 설명할 부분이 없다.
##
## Harbor 서버 종료하기
## (옵션 '-v'는 데이터 볼륨을 삭제하라는 뜻)
##
$ docker compose down -v
##
## Harbor 서버 시작하기
## (옵션 '-d'는 백그라운드에서 데몬 프로세스로 구동하라는 뜻)
##
$ docker compose up -d
'kubernetes' 카테고리의 다른 글
Oracle Cloud Infra(OCI) 그리고 OKE 기술 블로그(사용 설명서) (0) | 2023.02.15 |
---|---|
Podman 명령 사용을 위한 Insecure Registry 설정 (0) | 2023.02.14 |
Container image timezone(tz)을 Seoul(서울)로 설정 (0) | 2023.01.27 |
Kubernetes에 Harbor Registry 자격 증명(Credential) 설정 [Registry Secret 등록] (0) | 2022.12.29 |
Oracle Cloud(OCI) OKE의 Network LB (0) | 2022.12.05 |