컨테이너 레지스트리로 인증
GitLab 로그인 자격 증명, 토큰 또는 CI job 토큰과 같은 CI/CD 변수를 사용하여 컨테이너 레지스트리로 인증하는 방법을 알아봅니다.
컨테이너 레지스트리로 인증하려면 다음을 사용할 수 있습니다: GitLab 사용자 이름 및 비밀번호(2FA가 활성화된 경우 사용 불가) 개인 액세스 토큰 배포 토큰 프로젝트 액세스 토큰 그룹 액세스 토큰 GitLab CLI 토큰 기반 인증 방법의 경우 필요한 최소 범위: 읽기(pull) 액세스의 경우 read_registry 여야 합니다. 쓰기(push) 액세스의 경우 write_registry 및 read_registry 여야 합니다. Note Admin Mode는 컨테이너 레지스트리 인증 중에는 적용되지 않습니다. Admin Mode가 활성화된 관리자가 admin_mode 범위 없이 개인 액세스 토큰을 생성하면 Admin Mode가 활성화되어 있더라도 해당 토큰이 작동합니다. 자세한 내용은 Admin Mode 를 참조하세요. 사용자 이름 및 비밀번호로 인증 # Note 계정에서 이메일 OTP를 포함하여 이중 인증(2FA) 을 활성화한 경우 토큰으로 인증 해야 합니다. 사용자 이름과 비밀번호로 인증하려면 docker login 명령을 실행합니다: docker login registry.example.com -u <username> -p <password> 보안 상의 이유로 -p 대신 --password-stdin 플래그를 사용하는 것을 권장합니다: echo "<password>" | docker login registry.example.com -u <username> --password-stdin 토큰으로 인증 {#authenticate-with-a-token} # 토큰으로 인증하려면 docker login 명령을 실행합니다: TOKEN=<token> echo "$TOKEN" | docker login registry.example.com -u <username> --password-stdin 인증 후 클라이언트는 자격 증명을 캐시합니다. 이후 작업은 지정된 작업만 수행하도록 승인된 JWT 토큰을 반환하는 인증 요청을 합니다. 토큰은 다음 기간 동안 유효합니다: GitLab Self-Managed에서 기본적으로 5분 GitLab.com에서 15분 GitLab CI/CD를 사용하여 인증 # CI/CD를 사용하여 컨테이너 레지스트리로 인증하려면 다음을 사용할 수 있습니다: CI_REGISTRY_USER CI/CD 변수. 이 변수는 컨테이너 레지스트리에 대한 읽기-쓰기 액세스 권한이 있는 job별 사용자를 보유합니다. 비밀번호도 자동으로 생성되어 CI_REGISTRY_PASSWORD 에서 사용할 수 있습니다. echo "$CI_REGISTRY_PASSWORD" | docker login $CI_REGISTRY -u $CI_REGISTRY_USER --password-stdin CI job 토큰 . 이 토큰은 읽기(pull) 액세스에만 사용할 수 있습니다. read_registry 범위가 있지만 push 작업에 필요한 write_registry 범위는 없습니다. echo "$CI_JOB_TO
