13.6.2. Pod가 다른 보안 레지스트리의 이미지를 참조하도록 허용


.dockercfg 파일(또는 최신 Docker 클라이언트의 경우 $HOME/.docker/config.json )은 이전에 보안 또는 비보안 레지스트리에 로그인한 경우 정보를 저장하는 Docker 인증 정보 파일입니다.

OpenShift Container Platform의 내부 레지스트리가 아닌 보안 컨테이너 이미지를 가져오려면 Docker 인증 정보에서 풀 시크릿 을 생성하여 서비스 계정에 추가해야 합니다.

보안 레지스트리의 .dockercfg 파일이 이미 있는 경우 다음을 실행하여 해당 파일에서 보안을 생성할 수 있습니다.

$ oc create secret generic <pull_secret_name> \
    --from-file=.dockercfg=<path/to/.dockercfg> \
    --type=kubernetes.io/dockercfg

$HOME/.docker/config.json 파일이 있는 경우 다음을 수행합니다.

$ oc create secret generic <pull_secret_name> \
    --from-file=.dockerconfigjson=<path/to/.docker/config.json> \
    --type=kubernetes.io/dockerconfigjson

보안 레지스트리의 Docker 인증 정보 파일이 아직 없는 경우 다음을 실행하여 시크릿을 생성할 수 있습니다.

$ oc create secret docker-registry <pull_secret_name> \
    --docker-server=<registry_server> \
    --docker-username=<user_name> \
    --docker-password=<password> \
    --docker-email=<email>

Pod의 이미지 가져오기에 시크릿을 사용하려면 서비스 계정에 이 시크릿을 추가해야 합니다. 이 예제의 서비스 계정 이름은 Pod에서 사용하는 서비스 계정 이름과 일치해야 합니다. default 는 기본 서비스 계정입니다.

$ oc secrets link default <pull_secret_name> --for=pull

빌드 이미지를 푸시하고 가져오는 데 시크릿을 사용하려면 Pod 내부에서 보안을 마운트할 수 있어야 합니다. 다음을 실행하여 수행할 수 있습니다.

$ oc secrets link builder <pull_secret_name>

13.6.2.1. eapd 인증을 사용하여 프라이빗 레지스트리에서 가져오기

개인 레지스트리는 별도의 서비스에 인증을 위임할 수 있습니다. 이 경우 인증 및 레지스트리 끝점 둘 다에 대해 이미지 풀 시크릿을 정의해야 합니다.

참고

Red Hat Container Catalog의 타사 이미지는 Red Hat Connect 파트너 레지스트리(registry.connect.redhat.com)를 통해 제공됩니다. 이 레지스트리는 sso.redhat.com 에 인증을 위임하므로 다음 절차가 적용됩니다.

  1. 위임된 인증 서버에 대한 시크릿을 생성합니다.

    $ oc create secret docker-registry \
        --docker-server=sso.redhat.com \
        --docker-username=developer@example.com \
        --docker-password=******** \
        --docker-email=unused \
        redhat-connect-sso
    
    secret/redhat-connect-sso
  2. 개인 레지스트리에 대한 시크릿을 생성합니다.

    $ oc create secret docker-registry \
        --docker-server=privateregistry.example.com \
        --docker-username=developer@example.com \
        --docker-password=******** \
        --docker-email=unused \
        private-registry
    
    secret/private-registry
참고

Red Hat Connect 파트너 레지스트리(registry.connect.redhat.com)는 자동 생성된 dockercfg 보안 유형(BZ#1476330)을 허용하지 않습니다. 일반 파일 기반 보안은 docker login 명령에서 생성된 파일을 사용하여 생성해야 합니다.

$ docker login registry.connect.redhat.com --username developer@example.com

Password: *************
Login Succeeded

$ oc create secret generic redhat-connect --from-file=.dockerconfigjson=.docker/config.json

$ oc secrets link default redhat-connect --for=pull
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.