harbor private registry offline 설치

진웅·2025년 8월 19일

harbor

목록 보기
1/5

Podman이나 Docker로 Harbor 레지스트리를 구축하는 가장 안정적이고 쉬운 방법은 공식 설치 스크립트를 사용하는 것입니다. 이 스크립트는 Docker Compose를 기반으로 Harbor의 모든 구성 요소를 컨테이너로 실행하여 설치와 관리를 매우 편리하게 해줍니다.

podman-compose를 사용하면 Podman 환경에서도 동일한 방식으로 설치할 수 있습니다. 여기서는 Docker/Podman 양쪽에서 모두 사용 가능한 공식 Docker Compose 기반의 설치법을 안내합니다.


## 왜 공식 스크립트(Docker Compose)가 가장 좋은가?

  • 안정성: Harbor는 데이터베이스, 캐시, 로그, 웹 UI 등 여러 서비스가 유기적으로 동작하는 복잡한 시스템입니다. 공식 스크립트는 이 서비스들의 버전 호환성과 네트워크 설정을 최적의 상태로 보장하여 안정성이 매우 높습니다.
  • 설치 용이성: 모든 구성 요소가 컨테이너화되어 있어 스크립트 실행 한 번으로 설치가 완료됩니다. 수동으로 각 구성 요소를 설정하는 것보다 훨씬 간편하고 실수가 적습니다.
  • 유지보수 편의성: 업그레이드, 설정 변경, 백업 및 복구 등 유지보수 작업 역시 제공되는 스크립트로 간단하게 처리할 수 있습니다.

## Harbor 설치 가이드 (공식 스크립트 활용)

사전 준비물

  • DockerDocker Compose (또는 Podman 및 podman-compose)
  • 최소 사양: CPU 2개, RAM 4GB, Disk 40GB 이상 (운영 환경은 CPU 4개, RAM 8GB, Disk 160GB 이상 권장)
  • (선택) HTTPS 설정을 위한 도메인 이름SSL 인증서

1단계: Harbor 설치 파일 다운로드

  1. Harbor 공식 GitHub 릴리스 페이지로 이동합니다.

  2. 원하는 버전의 Online 또는 Offline 설치 파일을 다운로드합니다.

    • Online Installer: 설치 시점에 Docker Hub에서 Harbor 이미지를 다운로드합니다. 파일 크기가 작아 가볍습니다.
    • Offline Installer: 모든 Harbor 이미지가 포함되어 있어 인터넷이 없는 폐쇄망 환경에서 유용합니다.
    # 최신 버전의 온라인 설치 파일 다운로드 (예: v2.11.1)
    wget https://github.com/goharbor/harbor/releases/download/v2.11.1/harbor-online-installer-v2.11.1.tgz
    
    # 압축 해제
    tar xzvf harbor-online-installer-v2.11.1.tgz

2단계: 설정 파일 수정

압축을 푼 디렉토리로 이동하여 설정 템플릿 파일을 복사하고 수정합니다.

cd harbor
cp harbor.yml.tmpl harbor.yml

이제 vinano 같은 편집기로 harbor.yml 파일을 열고, 최소한 다음 두 항목을 필수로 수정해야 합니다.

  • hostname: Harbor에 접속할 IP 주소 또는 도메인 이름을 입력합니다. (예: harbor.yourdomain.com 또는 192.168.0.10)
  • harbor_admin_password: 초기 admin 계정의 비밀번호를 설정합니다. (보안을 위해 복잡하게 설정하세요)

HTTPS 설정 (운영 환경 강력 권장)
안정적인 운영을 위해서는 반드시 HTTPS를 사용해야 합니다. harbor.yml 파일의 https 섹션 주석을 풀고, 준비된 SSL 인증서와 개인 키 파일의 경로를 지정합니다.

#...
https:
  # https 포트, 기본값 443
  port: 443
  # SSL 인증서 파일 경로
  certificate: /path/to/your/certificate.crt
  # SSL 개인 키 파일 경로
  private_key: /path/to/your/private_key.key
#...

3단계: Harbor 설치 스크립트 실행

설정이 완료되면 설치 스크립트를 실행합니다. 스크립트가 harbor.yml 파일을 읽어 Docker Compose 설정 파일을 생성하고 필요한 이미지를 다운로드한 후 컨테이너들을 실행합니다.

# Podman 사용자는 docker-compose 대신 podman-compose를 사용하도록 환경 변수를 설정할 수 있습니다.
# export COMPOSE_CMD=podman-compose

sudo ./install.sh

설치 스크립트는 다음과 같은 옵션과 함께 사용할 수 있습니다.

  • --with-trivy: 이미지 취약점 스캐너인 Trivy를 함께 설치합니다. (권장)
  • --with-chartmuseum: Helm Chart 저장소 기능을 함께 설치합니다.

4단계: 접속 및 확인

설치가 완료되면 docker-compose ps (또는 podman-compose ps) 명령으로 모든 Harbor 컨테이너가 정상적으로 실행 중인지 확인합니다.

그 후 웹 브라우저를 열어 2단계에서 설정한 hostname으로 접속합니다. (예: https://harbor.yourdomain.com) 초기 계정은 adminharbor.yml에 설정한 비밀번호입니다.

이 방법이 안정성과 편의성 면에서 가장 균형 잡힌 최적의 Harbor 구축 방법입니다.

profile
bytebliss

0개의 댓글