En este paso, exploraremos cómo cargar una variante de plataforma específica de una imagen Docker desde un archivo usando la bandera --platform. Esto es particularmente útil cuando un archivo de imagen contiene variantes para múltiples arquitecturas (ej. linux/amd64, linux/arm64).
Primero, eliminemos nuevamente la imagen hello-world para comenzar desde cero.
docker rmi hello-world
Deberías ver una salida confirmando la eliminación de la imagen.
Untagged: hello-world:latest
Deleted: sha256:...
Ahora, usaremos el comando docker load con la bandera --input para especificar el archivo y la bandera --platform para indicar la plataforma deseada. Para este ejemplo, especificaremos linux/amd64, que es la arquitectura de la VM de LabEx.
docker load --input ~/project/hello-world.tar --platform linux/amd64
La bandera --platform asegura que Docker solo cargue la variante de imagen que coincide con la arquitectura y sistema operativo especificados. Aunque la imagen hello-world es muy simple y probablemente no tenga variaciones significativas entre plataformas en su archivo, esto demuestra el uso de la bandera. Deberías ver una salida indicando que se están cargando las capas.
...
Loaded image: hello-world:latest
Para confirmar que la imagen se ha cargado, lista las imágenes Docker.
docker images
La imagen hello-world debería aparecer en la lista.
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest ... ... ...
Usar la bandera --platform es importante cuando trabajas con archivos de imágenes multi-arquitectura para asegurarte de cargar la variante correcta para tu entorno.