검색

6.8. 개인 레지스트리에서 이미지 및 이미지 스트림 가져 오기

download PDF

인증이 필요한 개인 이미지 레지스트리에서 태그 및 이미지 메타 데이터를 가져 오도록 이미지 스트림을 구성할 수 있습니다. 이 절차는 Cluster Samples Operator가 콘텐츠를 registry.redhat.io 이외의 항목에서 가져오는 데 사용하는 레지스트리를 변경하는 경우에 적용됩니다.

참고

안전하지 않거나 보안된 레지스트리에서 가져올 때 시크릿에 정의 된 레지스트리 URL에는 :80 포트 접미사가 포함되어야 합니다. 그렇지 않으면 레지스트리에서 가져 오려고 할 때 시크릿을 사용할 수 없습니다.

프로세스

  1. 다음 명령을 입력하여 인증 정보를 저장하는 데 사용되는secret 개체를 만들어야 합니다.

    $ oc create secret generic <secret_name> --from-file=.dockerconfigjson=<file_absolute_path> --type=kubernetes.io/dockerconfigjson
  2. 시크릿을 구성한 후 새 이미지 스트림을 생성하거나 oc import-image 명령을 입력합니다.

    $ oc import-image <imagestreamtag> --from=<image> --confirm

    가져 오기 프로세스 중에 OpenShift Container Platform은 시크릿을 선택하여 원격 당사자에게 제공합니다.

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

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

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

Docker 인증 정보 파일과 연결된 풀 암호에는 각각 고유한 인증 정보 세트가 있는 동일한 레지스트리에 대한 여러 참조가 포함될 수 있습니다.

config.json 파일 예

{
   "auths":{
      "cloud.openshift.com":{
         "auth":"b3Blb=",
         "email":"you@example.com"
      },
      "quay.io":{
         "auth":"b3Blb=",
         "email":"you@example.com"
      },
      "quay.io/repository-main":{
         "auth":"b3Blb=",
         "email":"you@example.com"
      }
   }
}

pull secret의 예

apiVersion: v1
data:
  .dockerconfigjson: ewogICAiYXV0aHMiOnsKICAgICAgIm0iOnsKICAgICAgIsKICAgICAgICAgImF1dGgiOiJiM0JsYj0iLAogICAgICAgICAiZW1haWwiOiJ5b3VAZXhhbXBsZS5jb20iCiAgICAgIH0KICAgfQp9Cg==
kind: Secret
metadata:
  creationTimestamp: "2021-09-09T19:10:11Z"
  name: pull-secret
  namespace: default
  resourceVersion: "37676"
  uid: e2851531-01bc-48ba-878c-de96cfe31020
type: Opaque

절차

  • 보안 레지스트리의 .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
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.