[Rocky Linux 8.10] Harbor v2.10.3 설치 및 구축 가이드

2025. 4. 15. 14:17·🔹Kubernetes
728x90
SMALL

✅ 사전 준비 사항

OS Rocky Linux 8.10 (x86_64)
Docker docker-ce / docker compose plugin
Harbor 버전 v2.10.3 (offline installer 사용)
접근 Domain harbor.local:5000
네트워크 폐쇄망 환경 (인터넷 미연결)

1. Docker & Compose 설치

# Docker Engine 설치
sudo dnf install -y yum-utils device-mapper-persistent-data lvm2
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io

# Docker 서비스 활성화
sudo systemctl enable --now docker

# Compose v2 plugin 설치
mkdir -p ~/.docker/cli-plugins
curl -SL https://github.com/docker/compose/releases/download/v2.27.1/docker-compose-linux-x86_64 \
  -o ~/.docker/cli-plugins/docker-compose
chmod +x ~/.docker/cli-plugins/docker-compose

# Compose 버전 확인
docker compose version

2. Harbor 오프라인 설치 파일 다운로드 및 압축 해제

mkdir -p /opt/harbor && cd /opt/harbor
curl -LO https://github.com/goharbor/harbor/releases/download/v2.10.3/harbor-offline-installer-v2.10.3.tgz

tar xzvf harbor-offline-installer-v2.10.3.tgz
cd harbor
cp harbor.yml.tmpl harbor.yml

3. docker insecure registry 설정

cat <<EOF > /etc/docker/daemon.json
{
  "insecure-registries": ["harbor.local:5000"]
}
EOF

systemctl restart docker

# Kubernetes와 함께 사용할 경우 /etc/containerd/config.toml에도 harbor mirror 추가 필요

4. harbor.yml 구성 (필수 항목 수정)

# 1. hostname 설정
sed -i 's/^#\?hostname:.*/hostname: harbor.local/' harbor.yml

# 2. harbor_admin_password 설정 (없으면 hostname 아래에 삽입)
grep -q '^harbor_admin_password:' harbor.yml \
  || sed -i '/^hostname:/a harbor_admin_password: Harbor12345' harbor.yml

# 3. https 블록 전체 주석 처리 (data_volume 전까지)
sed -i '/^https:/,/^data_volume:/ s/^/#/' harbor.yml

# 4. data_volume 경로 설정
sed -i 's/^#data_volume:.*/data_volume: \/data/' harbor.yml

# 5. database 블록 전체 주석 해제
sed -i '/^#database:/,/^#  conn_max_idle_time:/s/^#//' harbor.yml

5. /etc/hosts 등록

IP=$(hostname -I | awk '{print $1}')
grep -q "harbor.local" /etc/hosts || echo "$IP harbor.local" >> /etc/hosts

6. Harbor prepare 실행

cd /opt/harbor/harbor
rm -rf common
./prepare

prepare 명령이 성공적으로 실행되면 docker-compose.yml 파일이 생성됩니다.


7. Harbor 기동 (docker compose)

# 포트 변경 
sed -i 's/80:8080/5000:8080/' docker-compose.yml

# docker-compose.yml 파일 확인
ls -l docker-compose.yml

# Compose V2 (plugin)
docker compose up -d

8. 정상 설치 확인

# nginx 포함 컨테이너 상태 확인
docker ps | grep nginx
curl -i http://harbor.local:5000
curl http://harbor.local:5000/v2/
curl -u admin:Harbor12345 http://harbor.local:5000/api/v2.0/projects

# 테스트 이미지 push
docker login harbor.local:5000
# admin / Harbor12345

docker tag hello-world harbor.local:5000/library/hello-world
docker push harbor.local:5000/library/hello-world
  • 추가적으로 Window 에서 보고 싶다면
    • C:\Windows\System32\drivers\etc\hosts (메모장 관리자 권한으로 실행)
    • window (host os) 에서, 아래와 같이 볼 수 있다
192.168.56.101 harbor.local

 

 

LIST

'🔹Kubernetes' 카테고리의 다른 글

Argo CD / Argo Rollouts / Argo Workflows UI 가이드  (0) 2025.04.16
Kubernetes v1.30.0 폐쇄망 설치 가이드 (Harbor Registry 연동)  (0) 2025.04.15
쿠버네티스 워크로드 선택 기준  (0) 2025.02.28
taint와 toleration을 사용하는 이유  (0) 2025.02.27
Kubernetes 워크로드 리소스들의 특징 및 종속성  (0) 2025.02.25
'🔹Kubernetes' 카테고리의 다른 글
  • Argo CD / Argo Rollouts / Argo Workflows UI 가이드
  • Kubernetes v1.30.0 폐쇄망 설치 가이드 (Harbor Registry 연동)
  • 쿠버네티스 워크로드 선택 기준
  • taint와 toleration을 사용하는 이유
terranbin
terranbin
Studying Computer Science
  • terranbin
    Engineer
    terranbin
  • 전체
    오늘
    어제
    • 분류 전체보기 (129)
      • ☁️Cloud (42)
        • AWS (38)
        • MS Azure (4)
      • 🐳 Infra (1)
        • System (12)
        • DRBD (3)
      • 🔌Network (8)
      • 🔹Storage (8)
      • 🔹Kubernetes (15)
      • 🔹 DevOps (8)
      • 🔹Study (4)
      • 🔹Install (6)
      • 🔹ETC (2)
      • 🔹PostMan (6)
      • 🔹Openstack (3)
      • 🔹RcloneView (6)
      • 🔹Test (0)
      • 🔹Debug (2)
      • 🔹DBMS (2)
  • 블로그 메뉴

    • 홈
  • 링크

    • sungbin
    • Github
  • 공지사항

  • 인기 글

  • 태그

    postman
    ceph
    EC2
    AWS
    network
    설치
    Google Drive
    kubernetes
    S3
    aws dlt
    rocky8
    EBS
    OpenStack
    distributed load testing
    kubectl
    centos7
    SAA
    rocky9
    rcloneview
    terraform
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
terranbin
[Rocky Linux 8.10] Harbor v2.10.3 설치 및 구축 가이드
상단으로

티스토리툴바