
Docker 이미지 공유 - Container Registry 없이
2022-10-13 last update
5 minutes reading containers docker development devops일반적으로 도커 컨테이너를 실행하려면 먼저 컨테이너 레지스트리(예: Github 컨테이너 레지스트리, Docker Hub 레지스트리 등)에서 필요한 도커 이미지를 가져옵니다. 이는 공개적으로 사용 가능한 이미지 또는 비공개 이미지일 수 있습니다. 마찬가지로 새로 빌드된 이미지를 이러한 레지스트리에 푸시할 수 있습니다.
그러나 컨테이너 레지스트리를 사용하지 않고 현재 한 시스템에 저장된 이미지를 다른 시스템이나 서버와 공유하려면 어떻게 해야 할까요?
이 솔루션이 작동하려면 공유 저장소 또는 클라우드 위치에 대한 액세스 또는 두 시스템(예: SCP) 간의 파일 전송 기능이 필요합니다.
Docker 이미지를 공유하는 단계:
A. 첫 번째 컴퓨터에서 새 도커 이미지를 빌드하거나 컨테이너 레지스트리에서 가져옵니다.
B. 이미지가 첫 번째 컴퓨터에서 준비되면 로컬 저장소의 .tar 파일에 저장합니다.
C. 새 .tar 파일이 로컬 저장소(location-1)에 저장되었는지 확인합니다.
D. 이 새로 생성된 .tar 파일을 두 번째 컴퓨터에서 액세스할 수 있는 위치에 공유합니다. 이것은 Azure, AWS 등의 클라우드 스토리지 위치이거나 공유 디렉토리이거나 동일한 네트워크에 있는 경우 파일을 단순히 'scp'일 수 있습니다.
E. 이제 새 .tar 파일을 두 번째 컴퓨터에 저장합니다.
두 번째 시스템에서 파일을 사용할 수 있게 되면 아래 명령을 사용하여 해당 .tar 파일에서 이미지를 로드합니다.
F. 이제 두 번째 머신에서 이미지를 사용할 수 있는지 확인할 수 있습니다.
G. 이제 컨테이너 레지스트리를 사용하지 않고도 두 번째 컴퓨터에서 이미지가 성공적으로 전송되었습니다.
이 방법은 Linux 및 Windows 기반 시스템 모두에서 작동합니다.
자세한 내용은 공식 Docker 설명서를 확인하십시오.
참조:
https://docs.docker.com/engine/reference/commandline/save/
https://docs.docker.com/engine/reference/commandline/load/
https://docs.docker.com/engine/reference/commandline/export/
https://docs.docker.com/engine/reference/commandline/import/
그러나 컨테이너 레지스트리를 사용하지 않고 현재 한 시스템에 저장된 이미지를 다른 시스템이나 서버와 공유하려면 어떻게 해야 할까요?
이 솔루션이 작동하려면 공유 저장소 또는 클라우드 위치에 대한 액세스 또는 두 시스템(예: SCP) 간의 파일 전송 기능이 필요합니다.
Docker 이미지를 공유하는 단계:
A. 첫 번째 컴퓨터에서 새 도커 이미지를 빌드하거나 컨테이너 레지스트리에서 가져옵니다.
B. 이미지가 첫 번째 컴퓨터에서 준비되면 로컬 저장소의 .tar 파일에 저장합니다.
docker save -o <location-1>/image-name.tar image-name
C. 새 .tar 파일이 로컬 저장소(location-1)에 저장되었는지 확인합니다.
ls <location-1>
D. 이 새로 생성된 .tar 파일을 두 번째 컴퓨터에서 액세스할 수 있는 위치에 공유합니다. 이것은 Azure, AWS 등의 클라우드 스토리지 위치이거나 공유 디렉토리이거나 동일한 네트워크에 있는 경우 파일을 단순히 'scp'일 수 있습니다.
E. 이제 새 .tar 파일을 두 번째 컴퓨터에 저장합니다.
두 번째 시스템에서 파일을 사용할 수 있게 되면 아래 명령을 사용하여 해당 .tar 파일에서 이미지를 로드합니다.
docker load -i <location-2>/image-name.tar
F. 이제 두 번째 머신에서 이미지를 사용할 수 있는지 확인할 수 있습니다.
docker images
G. 이제 컨테이너 레지스트리를 사용하지 않고도 두 번째 컴퓨터에서 이미지가 성공적으로 전송되었습니다.
이 방법은 Linux 및 Windows 기반 시스템 모두에서 작동합니다.
자세한 내용은 공식 Docker 설명서를 확인하십시오.
참조:
https://docs.docker.com/engine/reference/commandline/save/
https://docs.docker.com/engine/reference/commandline/load/
https://docs.docker.com/engine/reference/commandline/export/
https://docs.docker.com/engine/reference/commandline/import/