TECNOLOBO

No recuerdas tu codigo?
Se te olvido como se hace?

Aqui podras guardar lo que necesiten
Y cuando sea necesesario

Creado por julian gomez
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" ]