패키지 레지스트리 저장소 줄이기

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

정리 없이는 패키지 레지스트리가 시간이 지남에 따라 커집니다. 많은 수의 패키지와
자산이 추가되면:

  • 패키지 목록을 가져오는 속도가 느려집니다.
  • 서버의 저장 공간을 많이 차지합니다.

불필요한 패키지와 자산을 삭제하는 것을 권장합니다. 이 페이지에서는 삭제 방법에 대한 예제를 제공합니다.

패키지 레지스트리 저장소 사용량 확인

사용량 할당량 페이지 (Settings > Usage Quotas > Storage)에서는 패키지의 저장소 사용량을 표시합니다.

패키지 삭제

패키지를 패키지 레지스트리에 게시한 후에는 패키지를 편집할 수 없습니다. 대신,
삭제하고 다시 만들어야 합니다.

패키지를 삭제하려면 적절한 권한이 필요합니다.

패키지는 API 또는 UI를 사용하여 삭제할 수 있습니다.

UI에서 패키지를 삭제하려면, 그룹 또는 프로젝트에서:

  1. Deploy > Package Registry로 이동합니다.
  2. 삭제할 패키지의 이름을 찾습니다.
  3. Delete를 선택합니다.

패키지는 영구적으로 삭제됩니다.

요청 전달이 활성화된 경우,
패키지를 삭제하는 과정에서 의존성 혼란 위험이 발생할 수 있습니다.

패키지와 관련된 자산 삭제

패키지 자산을 삭제하려면 적절한 권한이 필요합니다.

패키지는 API 또는 UI를 사용하여 삭제할 수 있습니다.

UI에서 패키지 자산을 삭제하려면, 그룹 또는 프로젝트에서:

  1. Deploy > Package Registry로 이동합니다.
  2. 삭제할 패키지의 이름을 찾습니다.
  3. 추가 세부정보를 보려면 패키지를 선택합니다.
  4. 삭제할 자산의 이름을 찾습니다.
  5. 점 3개를 확장하고 Delete asset을 선택합니다.

패키지 자산은 영구적으로 삭제됩니다.

정리 정책

삭제할 패키지의 수에 따라 수동으로 패키지를 삭제하는 과정은 오랜 시간이 걸릴 수 있습니다.
정리 정책은 프로젝트에 적용 가능한 일련의 규칙을 정의하여 자동으로 삭제할 수 있는 패키지 자산을 정의합니다.

정리 정책 활성화

기본적으로 패키지 정리 정책은 비활성화되어 있습니다. 활성화하려면:

  1. 프로젝트 Settings > Packages and registries로 이동합니다.
  2. Manage storage used by package assets를 확장합니다.
  3. 규칙을 적절하게 설정합니다.

참고:
이 프로젝트 설정에 접근하려면 관련 프로젝트의 최소 유지 관리자가 되어야 합니다.

사용 가능한 규칙

  • Number of duplicated assets to keep: 유지할 중복 자산의 수. 일부 패키지 형식은
    자산의 여러 복사본을 업로드할 수 있도록 허용합니다. 보관할 중복 자산의 수를 제한하고
    제한에 도달하면 가장 오래된 자산을 자동으로 삭제할 수 있습니다. Maven 스냅샷과 같이 생성된
    고유한 파일 이름은 중복 자산 수를 평가할 때 고려되지 않습니다.

    Number of duplicated assets to keep12시간의 고정 주기를 가집니다.

자원을 절약하기 위한 정리 한도 설정

백그라운드 프로세스가 패키지 정리 정책을 실행합니다. 이 프로세스는
완료되기까지 오랜 시간이 걸릴 수 있으며 실행 중 서버 자원을 소모합니다.

다음 설정을 사용하여 정리 작업자의 수를 제한할 수 있습니다:

  • package_registry_cleanup_policies_worker_capacity: 동시에 실행되는 최대 정리 작업자 수입니다.
    이 숫자는 0 이상이어야 합니다.
    우리는 낮은 숫자로 시작하고 백그라운드 작업자가 사용하는 자원을 모니터링한 후 늘릴 것을 권장합니다.
    모든 작업자를 제거하고 정리 정책을 실행하지 않으려면 이를 0으로 설정합니다. 기본값은 2입니다.