컨테이너 레지스트리로 인증하기
Tier: Free, Premium, Ultimate
Offering: GitLab.com, Self-Managed, GitLab Dedicated
Offering: GitLab.com, Self-Managed, GitLab Dedicated
컨테이너 레지스트리에 대한 인증은 다음을 사용할 수 있습니다:
모든 이러한 인증 방법은 최소한의 범위를 필요로 합니다:
- 읽기(다운로드) 액세스의 경우
read_registry
여야 합니다. - 쓰기(업로드) 액세스의 경우
write_registry
및read_registry
여야 합니다.
컨테이너 레지스트리로의 인증 중 관리자 모드는 적용되지 않습니다. 관리자 권한이 있는 경우, 관리자 모드가 활성화된 상태에서
admin_mode
범위 없이 개인 액세스 토큰을 생성하면 해당 토큰은 작동하지만 관리자 모드가 활성화된 상태입니다.인증하려면 docker login
명령을 실행하십시오. 예를 들어:
TOKEN=<token>
echo "$TOKEN" | docker login registry.example.com -u <username> --password-stdin
GitLab CI/CD를 사용하여 인증하기
컨테이너 레지스트리에 대한 인증에 CI/CD를 사용하려면 다음을 사용할 수 있습니다:
-
CI_REGISTRY_USER
CI/CD 변수.이 변수는 컨테이너 레지스트리에 대한 읽기-쓰기 액세스를 가진 작업별 사용자를 보유합니다. 해당 암호는
CI_REGISTRY_PASSWORD
에서 자동으로 생성되어 사용할 수 있습니다.echo "$CI_REGISTRY_PASSWORD" | docker login $CI_REGISTRY -u $CI_REGISTRY_USER --password-stdin
-
echo "$CI_JOB_TOKEN" | docker login $CI_REGISTRY -u $CI_REGISTRY_USER --password-stdin
-
배포 토큰으로 최소한의 범위를 가져올 수 있습니다:
- 읽기(다운로드) 액세스의 경우
read_registry
입니다. - 쓰기(업로드) 액세스의 경우
read_registry
및write_registry
입니다.
echo "$CI_DEPLOY_PASSWORD" | docker login $CI_REGISTRY -u $CI_DEPLOY_USER --password-stdin
- 읽기(다운로드) 액세스의 경우
-
개인 액세스 토큰으로 최소한의 범위를 가져올 수 있습니다:
- 읽기(다운로드) 액세스의 경우
read_registry
입니다. - 쓰기(업로드) 액세스의 경우
read_registry
및write_registry
입니다.
echo "<access_token>" | docker login $CI_REGISTRY -u <username> --password-stdin
- 읽기(다운로드) 액세스의 경우