InfoGrab Docs

Harbor

GitLab 프로젝트의 오픈 소스 컨테이너 레지스트리로 Harbor를 구성하여 플랫폼 전반에서 아티팩트를 관리합니다.

Harbor를 GitLab 프로젝트의 컨테이너 레지스트리로 사용할 수 있습니다. Harbor 는 Kubernetes 및 Docker와 같은 클라우드 네이티브 컴퓨팅 플랫폼에서 아티팩트를 관리하는 데 도움이 되는 오픈 소스 레지스트리입니다. Harbor 통합은 GitLab CI/CD와 컨테이너 이미지 저장소가 필요한 경우 도움이 될 수 있습니다. 전제 조건 # Harbor 인스턴스에서 다음을 확인합니다: 통합할 프로젝트가 생성되어 있어야 합니다. 인증된 사용자에게 Harbor 프로젝트에서 이미지를 pull, push 및 편집할 권한이 있어야 합니다. GitLab 구성 # GitLab은 그룹 또는 프로젝트 수준에서 Harbor 프로젝트 통합을 지원합니다. GitLab에서 다음 단계를 완료합니다: 상단 표시줄에서 Search or go to 를 선택하고 프로젝트를 찾습니다. Settings > Integrations 를 선택합니다. Harbor 를 선택합니다. Enable integration 아래에서 Active 체크박스를 선택합니다. Harbor 구성 정보를 입력합니다: Harbor URL : 이 GitLab 프로젝트에 연결되는 Harbor 인스턴스의 기본 URL. 예: https://harbor.example.net . Harbor project name : Harbor 인스턴스의 프로젝트 이름. 예: testproject . Username : Harbor 인스턴스의 사용자 이름( 전제 조건 의 요구 사항을 충족해야 함). Password : 사용자 이름의 비밀번호. Save changes 를 선택합니다. Harbor 통합이 활성화된 후: CI/CD에 사용하기 위한 전역 변수 $HARBOR_USERNAME , $HARBOR_HOST , $HARBOR_OCI , $HARBOR_PASSWORD , $HARBOR_URL , $HARBOR_PROJECT 가 생성됩니다. 프로젝트 수준 통합 설정이 그룹 수준 통합 설정을 재정의합니다. 보안 고려 사항 # Harbor API 요청 보안 # Harbor 통합을 통한 각 API 요청에서 Harbor API 연결 자격 증명은 username:password 조합을 사용합니다. 다음은 안전한 사용을 위한 제안입니다: 연결하는 Harbor API에 TLS를 사용합니다. Harbor에서 최소 권한 원칙(접근 권한)을 자격 증명에 적용합니다. 자격 증명에 대한 순환 정책을 사용합니다. CI/CD 변수 보안 # .gitlab-ci.yml 파일에 푸시된 악성 코드는 $HARBOR_PASSWORD 를 포함한 변수를 손상시키고 서드파티 서버로 전송할 수 있습니다. 자세한 내용은 CI/CD 변수 보안 을 참조하세요. Harbor 변수 사용 # OCI 레지스트리로 Helm 차트 push # Helm은 기본적으로 OCI 레지스트리를 지원합니다. OCI는 Harbor 2.0 이상에서 지원됩니다. Helm의 블로그 및 문서 에서 OCI에 대해 자세히 알아보세요. helm: stage: helm image: name: dtza