13.8. 이미지 전송
한 컨테이너 이미지 레지스트리에서 다른 컨테이너 이미지 레지스트리로 이미지를 이동하려면 oc image mirror
명령을 사용합니다. 이미지는 로컬에 저장되지 않고 레지스트리에서 레지스트리로 스트리밍됩니다.
예를 들어 Docker Hub 에서 통합 레지스트리로 이미지를 복사하려면 다음 명령을 사용합니다.
$ oc image mirror docker.io/library/busybox:latest 172.30.0.0/16/myproject/toybox:latest
소스 또는 대상에서 docker.io
를 사용하는 경우 docker.io
및 라이브러리
구성 요소를 생략할 수 없습니다. 또한 latest
태그를 가져오려면 latest를 생략하지 마십시오.
이미지를 한 번에 여러 위치에 복사할 수 있습니다. 이렇게 하려면 여러 대상을 지정해야 합니다.
$ oc image mirror 172.30.0.0/16/myproject/busybox:latest docker.io/myrepository/busybox:stable docker.io/myrepository/toybox:dev
oc image mirror
는 OpenShift Container Platform 클러스터가 아닌 로컬에서 실행됩니다. 따라서 oc image mirror
는 소스 및 대상 레지스트리에 액세스할 수 있어야 합니다.
컨테이너 이미지 레지스트리에 이미지를 가져오거나 푸시하기 위해 인증이 필요한 경우 oc image mirror
명령을 실행하기 전에 docker login
명령을 사용하여 수동으로 로그인해야 합니다. Jenkins 에이전트 이미지 내에서 명령을 사용하고 있기 때문에 docker 바이너리 및 데몬에 대한 액세스 권한이 없는 경우 oc 이미지 미러
를 호출하기 전에 사용자의 홈 디렉터리에 유효한 자격 증명이 포함된 .docker/config.json
파일을 수동으로 제공할 수 있습니다.