의존성 프록시 저장 공간 축소

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

블롭에 대한 자동 제거 프로세스가 없습니다. 수동으로 삭제하지 않는 이상, 이는 영구히 저장됩니다. 이는 저장소 사용량 할당량에 영향을 미치므로 사용하지 않는 항목을 캐시에서 지우는 것이 중요합니다. 이 페이지에서는 이를 수행하는 여러 옵션에 대해 다룹니다.

의존성 프록시 저장소 사용량 확인

사용량 할당량 페이지(설정 > 사용량 할당량 > 저장소)에서는 패키지에 대한 저장소 사용량을 표시합니다. 이에는 의존성 프록시가 포함되지만, 아직 저장소는 표시되지 않습니다.

API를 사용하여 캐시 지우기

필요하지 않은 이미지 블롭으로 사용된 디스크 공간을 회수하려면 의존성 프록시 API를 사용하여 전체 캐시를 지우세요. 캐시를 지우면 다음 파이프라인이 실행될 때 Docker Hub에서 이미지나 태그를 다시 가져와야 합니다.

정리 정책

  • GitLab 15.0에서 필요한 역할이 변경됨니다.

GitLab 내에서 정리 정책 활성화

사용자 인터페이스에서 의존성 프록시의 자동 time-to-live (TTL) 정책을 활성화할 수 있습니다. 이를 위해 그룹의 설정 > 패키지 및 레지스트리 > 의존성 프록시로 이동하여 90일 후에 캐시에서 항목을 자동으로 지우도록 설정합니다.

GraphQL로 정리 정책 활성화

정리 정책은 더 이상 사용되지 않는 캐시된 이미지를 지우기 위해 사용할 수 있는 예약 작업입니다. 정책은 time-to-live (TTL) 로직을 사용합니다:

  • 날짜 수가 구성됩니다.
  • 그 날짜 수만큼 가져오지 않은 모든 캐시된 의존성 프록시 파일이 삭제됩니다.

정리 정책을 활성화하고 구성하려면 GraphQL API를 사용하세요:

mutation {
  updateDependencyProxyImageTtlGroupPolicy(input:
    {
      groupPath: "<your-full-group-path>",
      enabled: true,
      ttl: 90
    }
  ) {
    dependencyProxyImageTtlPolicy {
      enabled
      ttl
    }
    errors
  }
}

GraphQL 쿼리를 생성하는 방법을 알아보려면 GraphQL 시작 가이드를 참조하세요.

정책을 처음 활성화하면 기본 TTL 설정은 90일입니다. 활성화되면 오래된 의존성 프록시 파일은 매일 삭제 대기열에 들어갑니다. 처리 시간 때문에 즉시 삭제되지 않을 수 있습니다. 만약 캐시된 파일이 만료되었다고 표시된 후에 이미지가 가져오면 만료된 파일은 무시되고 새 파일이 외부 레지스트리에서 다운로드되어 캐시됩니다.