컨테이너 레지스트리로 인증하기

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

컨테이너 레지스트리로 인증하려면 다음을 사용할 수 있습니다:

이러한 모든 인증 방법은 최소 스코프를 필요로 합니다:

  • 읽기(풀) 액세스의 경우 read_registry.
  • 쓰기(푸시) 액세스의 경우 write_registryread_registry.

인증하려면 docker login 명령어를 실행하세요. 예를 들어:

TOKEN=<토큰>
docker login registry.example.com -u <사용자명> --password-stdin <<<$TOKEN

GitLab CI/CD를 사용하여 인증하기

컨테이너 레지스트리로 인증하기 위해 CI/CD를 사용할 수 있습니다. 다음을 사용할 수 있습니다:

  • CI_REGISTRY_USER CI/CD 변수.

    이 변수는 컨테이너 레지스트리에 대한 읽기-쓰기 액세스를 가진 작업별 사용자를 보유합니다. 이 사용자의 비밀번호는 자동으로 생성되어 CI_REGISTRY_PASSWORD에서 사용할 수 있습니다.

    docker login $CI_REGISTRY -u $CI_REGISTRY_USER --password-stdin <<<$CI_REGISTRY_PASSWORD
    
  • CI 작업 토큰.

    docker login $CI_REGISTRY -u $CI_REGISTRY_USER --password-stdin <<<$CI_JOB_TOKEN
    
  • 배포 토큰으로 최소 스코프를 가집니다:
    • 읽기(풀) 액세스의 경우 read_registry.
    • 쓰기(푸시) 액세스의 경우 read_registrywrite_registry.
    docker login $CI_REGISTRY -u $CI_DEPLOY_USER --password-stdin <<<$CI_DEPLOY_PASSWORD
    
  • 개인 액세스 토큰으로 최소 스코프를 가집니다:
    • 읽기(풀) 액세스의 경우 read_registry.
    • 쓰기(푸시) 액세스의 경우 read_registrywrite_registry.
    docker login $CI_REGISTRY -u <사용자명> -p <액세스 토큰>