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

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. …을 확장하고 에셋 삭제를 선택합니다.

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

정리 정책

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

정리 정책 활성화

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

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

사용 가능한 규칙

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

    유지할 중복 에셋 수에는 고정된 간격 12시간이 있습니다.

자원 저장을 위한 정리 제한 설정

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

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

  • package_registry_cleanup_policies_worker_capacity: 동시에 실행되는 최대 정리 워커 수입니다. 이 숫자는 0보다 크거나 같아야 합니다. 낮은 숫자로 시작하고 배경 작업자가 사용하는 자원을 모니터링한 후에 이를 늘리는 것을 권장합니다. 모든 작업자를 제거하고 정리 정책을 실행하지 않으려면 이 값을 0으로 설정하십시오. 기본값은 2입니다.