3.5. 개인 레지스트리에서 컨테이너 이미지 가져오기
registry.redhat.io
레지스트리에는 이미지에 액세스하여 가져오기 위한 인증이 필요합니다. registry.redhat.io
및 기타 개인 레지스트리로 인증하려면 containers-prepare-parameter.yaml
파일에 ContainerImageRegistryCredentials
및 ContainerImageRegistryLogin
매개변수를 포함합니다.
ContainerImageRegistryCredentials
일부 컨테이너 이미지 레지스트리는 이미지에 액세스하기 위해 인증이 필요합니다. 이 경우 container-prepare-parameter.yaml
환경 파일에서 ContainerImageRegistryCredentials
매개변수를 사용합니다. ContainerImageRegistryCredentials
매개변수는 개인 레지스트리 URL에 따라 여러 키를 사용합니다. 각 개인 레지스트리 URL은 고유한 키와 값 쌍을 사용하여 사용자 이름(키)과 암호(값)를 정의합니다. 이런 방법으로 여러 개인 레지스트리의 인증 정보를 지정할 수 있습니다.
parameter_defaults: ContainerImagePrepare: - push_destination: true set: namespace: registry.redhat.io/... ... ContainerImageRegistryCredentials: registry.redhat.io: my_username: my_password
예제에서 my_username
및 my_password
를 사용자 인증 정보로 교체합니다. 개별 사용자 인증 정보를 사용하는 대신, 레지스트리 서비스 계정을 생성하고 해당 인증 정보를 사용하여 registry.redhat.io
콘텐츠에 액세스하는 것이 좋습니다.
여러 레지스트리에 대한 인증 세부 정보를 지정하려면 ContainerImageRegistryCredentials
의 각 레지스트리에 대해 여러 개의 키 쌍 값을 설정합니다.
parameter_defaults: ContainerImagePrepare: - push_destination: true set: namespace: registry.redhat.io/... ... - push_destination: true set: namespace: registry.internalsite.com/... ... ... ContainerImageRegistryCredentials: registry.redhat.io: myuser: 'p@55w0rd!' registry.internalsite.com: myuser2: '0th3rp@55w0rd!' '192.0.2.1:8787': myuser3: '@n0th3rp@55w0rd!'
기본 ContainerImagePrepare
매개변수는 인증이 필요한 registry.redhat.io
에서 컨테이너 이미지를 가져옵니다.
자세한 내용은 Red Hat Container Registry Authentication 을 참조하십시오.
ContainerImageRegistryLogin
ContainerImageRegistryLogin
매개변수는 오버클라우드 노드 시스템이 컨테이너 이미지를 가져오기 위해 원격 레지스트리에 로그인해야 하는지 여부를 제어하는 데 사용합니다. 이러한 상황은 오버클라우드 노드에서 이미지를 호스팅하는 데 언더클라우드를 사용하는 대신 이미지를 직접 가져오도록 할 때 발생합니다.
지정된 설정에 대해 push_destination
이 구성되지 않은 경우 ContainerImageRegistryLogin
을 true
로 설정해야 합니다.
parameter_defaults: ContainerImagePrepare: - push_destination: false set: namespace: registry.redhat.io/... ... ... ContainerImageRegistryCredentials: registry.redhat.io: myuser: 'p@55w0rd!' ContainerImageRegistryLogin: true
하지만 오버클라우드 노드에서 ContainerImageRegistryCredentials
에 정의된 레지스트리 호스트에 네트워크로 연결할 수 없고 ContainerImageRegistryLogin
을 true
로 설정하는 경우, 로그인할 때 배포에 실패할 수 있습니다. 오버클라우드 노드에서 ContainerImageRegistryCredentials
에 정의된 레지스트리 호스트에 네트워크로 연결할 수 없고 push_destination
을 true
로 설정하고 ContainerImageRegistryLogin
을 false
로 설정하여 오버클라우드 노드가 언더클라우드에서 이미지를 가져오도록 합니다.
parameter_defaults: ContainerImagePrepare: - push_destination: true set: namespace: registry.redhat.io/... ... ... ContainerImageRegistryCredentials: registry.redhat.io: myuser: 'p@55w0rd!' ContainerImageRegistryLogin: false