이 단계에서는 --platform 플래그를 사용하여 아카이브에서 Docker 이미지의 특정 플랫폼 변형을 로드하는 방법을 살펴보겠습니다. 이는 이미지 아카이브에 여러 아키텍처 (예: linux/amd64, linux/arm64) 에 대한 변형이 포함된 경우 특히 유용합니다.
먼저, 다시 시작하기 위해 hello-world 이미지를 제거해 보겠습니다.
docker rmi hello-world
이미지 삭제를 확인하는 출력을 볼 수 있습니다.
Untagged: hello-world:latest
Deleted: sha256:...
이제 --input 플래그를 사용하여 아카이브 파일을 지정하고 --platform 플래그를 사용하여 원하는 플랫폼을 지정하는 docker load 명령어를 사용합니다. 이 예에서는 LabEx VM 의 아키텍처인 linux/amd64를 지정합니다.
docker load --input ~/project/hello-world.tar --platform linux/amd64
--platform 플래그는 Docker 가 지정된 아키텍처 및 운영 체제와 일치하는 이미지 변형만 로드하도록 보장합니다. hello-world 이미지는 매우 단순하고 아카이브에 상당한 플랫폼 변형이 없을 가능성이 높지만, 이는 플래그의 사용법을 보여줍니다. 레이어가 로드되고 있음을 나타내는 출력을 볼 수 있습니다.
...
Loaded image: hello-world:latest
이미지가 로드되었는지 확인하려면 Docker 이미지를 나열합니다.
docker images
hello-world 이미지가 목록에 있어야 합니다.
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest ... ... ...
다중 아키텍처 이미지 아카이브로 작업할 때는 --platform 플래그를 사용하여 환경에 맞는 올바른 변형을 로드하는 것이 중요합니다.