Categorias
iiiiii
crear imagen con arquitectura espesifica
Descripcion
crear imagen con arquitectura espesifica
Nota 1
Nota:
-se puede agregar forzosamente una arquitecura dentro de :
FROM --platform=linux/amd64 //Esto indica la plataforma --platform=linux/amd64
- para listar las arquitecruras soportadas para usar se realiza el comdando :
docker buildx ls
Nota 2
documentacion de contenedor que nos permite
crear multiples arquitecturas facilmente:
https://docs.docker.com/build/building/multi-platform/#getting-started
1. listar las arquitecuras soportadas
docker image ls
2. crear imagen encargada de crearnos multiples arquitecturas para una imagen
docker buildx create --name mybuilder --bootstrap --use
3. observamos que la arquitecura ya se creo con elnombre de mybuilder
docker image ls
4. hacer uso de este nuevo creado
docker buildx use mybuilder
5. usar la variable de entorno para que puede espesificar con esta todas las plataformas
--platform=$BUILDPLATFORM
6. creamos la imagen con todas las platamormas separadas por coma
docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -t <username>/<image>:latest .
Nota 3
#FROM plataforma --platform=arm64 node:19.2-alpine3.16
# /app alpine viene con esta carpeta ya creada
# tambien se le puede formzar usar la plataforma --platform=arm64
FROM plataforma --platform=$BUILDPLATFORM node:19.2-alpine3.16
# cd app
WORKDIR /app
COPY package.json ./
#ejecutar comandos para instalar las dependencias
RUN npm install
# se copea los archivos app.js y package.json al destino ./app
COPY . .
#realizar tesgin
RUN npm run test
#eliminar_Archivos_y_direc_No_necesa_en_produ
RUN rm -rf test && rm -rf node_modules
RUN npm install --prod
#comando run aplicacion
CMD [ "node","app.js" ]