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

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

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

  • 패키지 디렉터리을 가져오는 데 시간이 더 오래 걸립니다.
  • 서버의 저장 공간을 많이 차지하여 저장 공간 사용량 할당에 영향을 미칩니다.

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

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

사용량 할당 페이지(설정 > 사용량 할당 > 리포지터리)에서 패키지의 저장 공간 사용량을 확인할 수 있습니다.

패키지 삭제

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

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

패키지를 삭제하려면 API 또는 UI를 사용해야 합니다.

UI에서 패키지를 삭제하려면 그룹이나 프로젝트에서 다음을 수행하세요:

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

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

요청 포워딩이 활성화되어 있는 경우, 패키지를 삭제하는 것은 의존성 혼란 리스크를 유발할 수 있습니다.

패키지와 관련된 에셋 삭제

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

패키지를 삭제하려면 API 또는 UI를 사용해야 합니다.

UI에서 패키지 에셋을 삭제하려면 그룹이나 프로젝트에서 다음을 수행하세요:

  1. 배포 > 패키지 레지스트리로 이동합니다.
  2. 삭제할 패키지의 이름을 찾습니다.
  3. 패키지를 선택하여 추가 세부 정보를 확인합니다.
  4. 삭제할 에셋의 이름을 찾습니다.
  5. 점3개를 확장하고 에셋 삭제를 선택합니다.

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

정리 정책

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

정리 정책 활성화

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

  1. 프로젝트로 이동하여 설정 > 패키지 및 레지스트리로 이동합니다.
  2. 패키지 에셋으로 사용되는 저장 공간 관리를 확장합니다.
  3. 규칙을 적절하게 설정합니다.
note
이러한 프로젝트 설정에 액세스하려면 해당 프로젝트의 유지보수자 이상이어야 합니다.

사용 가능한 규칙

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

    유지하는 중복 에셋 수고정된 주기인 12시간를 가지고 있습니다.

리소스 절약을 위한 정리 한도 설정

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

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

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