Este Gist explica cómo configurar y usar Docker Buildx para construir imágenes para múltiples arquitecturas y hacer push a Docker Hub.
Primero, creamos un nuevo builder y lo activamos:
docker buildx create --name <nombre-del-builder> --bootstrap --useEj:
docker buildx create --name mybuilder --bootstrap --usePuedes verificar si el builder se creó correctamente con:
docker buildx lsAgrege en el Dockerfile --platform=$BUILDPLATFORM la siguiente configuración:
# Usamos una imagen base compatible con múltiples arquitecturas
FROM --platform=$BUILDPLATFORM node:19.2-alpine3.16
Finalmente, construimos la imagen para amd64 y arm64, y la subimos a Docker Hub:
docker buildx build --platform linux/amd64,linux/arm64 -t <usuario/imageRepo> --push .
Ej:
docker buildx build --platform linux/amd64,linux/arm64 -t jasen019/cron-ticker --push .Nota: Esta son las plataformas que me permite mi OS, puede revisar sus platforms habilitadas con: docker buildx ls