패키지 레지스트리 저장 공간 축소

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

정리하지 않으면 패키지 레지스트리는 시간이 지남에 따라 커집니다. 많은 수의 패키지와 그에 딸린 에셋이 추가되면:

  • 패키지 목록을 가져오는 데 시간이 더 오래 걸립니다.
  • 서버의 저장 공간을 많이 차지합니다.

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

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

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

패키지 삭제

패키지 레지스트리에 게시한 후에 패키지를 편집할 수 없습니다. 대신 삭제하고 다시 생성해야 합니다.

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

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

UI에서 패키지를 삭제하려면 그룹이나 프로젝트에서:

  1. 배포 > 패키지 레지스트리로 이동합니다.
  2. 삭제하려는 패키지의 이름을 찾습니다.
  3. 삭제를 선택합니다.

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

요청 전달이 활성화되어 있으면 패키지를 삭제하는 것이 의존성 혼란 위험을 초래할 수 있습니다.

패키지와 관련된 에셋 삭제

패키지 에셋을 삭제하려면 권한이 필요합니다.

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

UI에서 패키지 에셋을 삭제하려면 그룹이나 프로젝트에서:

  1. 배포 > 패키지 레지스트리로 이동합니다.
  2. 삭제하려는 패키지의 이름을 찾습니다.
  3. 패키지를 선택하여 추가 세부 정보를 볼 수 있습니다.
  4. 삭제하려는 에셋의 이름을 찾습니다.
  5. 마침표를 확장하고 에셋 삭제를 선택합니다.

패키지 에셋이 영구적으로 삭제됩니다.

정리 정책

삭제할 패키지의 수에 따라 수동으로 패키지를 삭제하는 프로세스는 완료까지 오랜 시간이 걸릴 수 있습니다. 정리 정책은 프로젝트에 적용되는 일련의 규칙을 정의하여 자동으로 삭제할 수 있는 패키지 에셋을 정의합니다.

정리 정책 활성화

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

  1. 프로젝트 설정 > 패키지 및 레지스트리로 이동합니다.
  2. 패키지 에셋의 사용 공간 관리를 확장합니다.
  3. 규칙을 적절하게 설정합니다.

참고: 이러한 프로젝트 설정에 액세스하려면 관련 프로젝트에서 적어도 유지보수자 이상이어야 합니다.

사용 가능한 규칙

  • 유지할 중복 에셋 수: 유지할 중복 에셋의 수입니다. 일부 패키지 형식에서는 에셋을 여러 번 업로드할 수 있습니다. 유지할 중복 에셋의 수를 제한하고 한계에 도달하면 가장 오래된 에셋을 자동으로 삭제할 수 있습니다. Maven 스냅샷에서 생성된 고유한 파일 이름은 중복 에셋의 수 평가 시 고려되지 않습니다.

    유지할 중복 에셋 수고정된 12시간 간격을 갖습니다.

리소스 보존을 위한 정리 한도 설정

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

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

  • package_registry_cleanup_policies_worker_capacity: 동시에 실행되는 최대 정리 워커 수입니다. 이 숫자는 0보다 크거나 같아야 합니다. 낮은 숫자로 시작하고 백그라운드 워커가 사용하는 리소스를 모니터링한 후 이 숫자를 늘리는 것이 좋습니다. 모든 워커를 제거하고 정리 정책을 실행하지 않으려면 이 값을 0으로 설정합니다. 기본 값은 2입니다.