This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.8.3.8. 프라이빗 레지스트리에 Docker 인증 정보 사용
프라이빗 Docker 레지스트리에 유효한 자격 증명이 있는 .docker/config.json 파일을 사용하여 빌드를 제공할 수 있습니다. 이를 통해 출력 이미지를 프라이빗 Docker 레지스트리로 내보내거나 인증이 필요한 프라이빗 Docker 레지스트리에서 빌더 이미지를 가져올 수 있습니다.
OpenShift Container Platform Docker 레지스트리의 경우 OpenShift Container Platform에서 보안이 자동으로 생성되므로 필요하지 않습니다.
.docker/config.json 파일은 기본적으로 홈 디렉터리에 있으며 다음과 같은 형식이 있습니다.
auths: https://index.docker.io/v1/: auth: "YWRfbGzhcGU6R2labnRib21ifTE=" email: "user@example.com"
auths:
https://index.docker.io/v1/:
auth: "YWRfbGzhcGU6R2labnRib21ifTE="
email: "user@example.com"
이 파일에 여러 Docker 레지스트리 항목을 정의할 수 있습니다. 또는 docker login
명령을 실행하여 이 파일에 인증 항목을 추가할 수도 있습니다. 파일이 없는 경우 생성됩니다.
Kubernetes는 구성 및 암호를 저장하는 데 사용할 수 있는 Secret
오브젝트를 제공합니다.
로컬 .docker/config.json 파일에서 보안을 생성합니다.
oc create secret generic dockerhub \ --from-file=.dockerconfigjson=<path/to/.docker/config.json> \ --type=kubernetes.io/dockerconfigjson
$ oc create secret generic dockerhub \ --from-file=.dockerconfigjson=<path/to/.docker/config.json> \ --type=kubernetes.io/dockerconfigjson
Copy to Clipboard Copied! 이 명령은
dockerhub
라는 보안의 JSON 사양을 생성한 후 오브젝트를 생성합니다.보안이 생성되면 builder 서비스 계정에 추가합니다. 각 빌드는
builder
역할로 실행되므로 다음 명령을 사용하여 시크릿에 액세스 권한을 부여해야 합니다.oc secrets link builder dockerhub
$ oc secrets link builder dockerhub
Copy to Clipboard Copied! BuildConfig
의output
섹션에pushSecret
필드를 추가하고 생성한보안
의 이름으로 설정합니다. 위의 예에서dockerhub
:spec: output: to: kind: "DockerImage" name: "private.registry.com/org/private-image:latest" pushSecret: name: "dockerhub"
spec: output: to: kind: "DockerImage" name: "private.registry.com/org/private-image:latest" pushSecret: name: "dockerhub"
Copy to Clipboard Copied! oc set build-secret
명령을 사용하여 빌드 구성에 내보내기 보안을 설정할 수도 있습니다.oc set build-secret --push bc/sample-build dockerhub
$ oc set build-secret --push bc/sample-build dockerhub
Copy to Clipboard Copied! 빌드 전략 정의의 일부인
pullSecret
필드를 지정하여 프라이빗 Docker 레지스트리에서 빌더 컨테이너 이미지를 가져옵니다.strategy: sourceStrategy: from: kind: "DockerImage" name: "docker.io/user/private_repository" pullSecret: name: "dockerhub"
strategy: sourceStrategy: from: kind: "DockerImage" name: "docker.io/user/private_repository" pullSecret: name: "dockerhub"
Copy to Clipboard Copied! oc set build-secret
명령을 사용하여 빌드 구성에 가져오기 보안을 설정할 수도 있습니다.oc set build-secret --pull bc/sample-build dockerhub
$ oc set build-secret --pull bc/sample-build dockerhub
Copy to Clipboard Copied!
이 예제에서는 소스 빌드에 pullSecret
을 사용하지만 Docker 및 Custom 빌드에도 적용할 수 있습니다.