29 lines
731 B
Plaintext
29 lines
731 B
Plaintext
# Usa una imagen base de Node.js, versión alpine por ser más ligera
|
|
FROM node:18-alpine
|
|
|
|
# Establece el directorio de trabajo
|
|
WORKDIR /usr/src/app
|
|
|
|
# Copia el package.json y el package-lock.json (si está disponible)
|
|
COPY package*.json ./
|
|
|
|
# Instala las dependencias del proyecto
|
|
RUN npm install
|
|
|
|
# Copia el resto de los archivos del proyecto
|
|
COPY . .
|
|
|
|
# Compila la aplicación para producción (ajustar según el framework)
|
|
RUN npm run build
|
|
|
|
# Usa nginx o similar para servir el contenido estático
|
|
# Usa la imagen de nginx para servir los archivos
|
|
FROM nginx:alpine
|
|
COPY --from=0 /usr/src/app/build /usr/share/nginx/html
|
|
|
|
# Expone el puerto 80 para el servidor web
|
|
EXPOSE 80
|
|
|
|
# Inicia nginx
|
|
CMD ["nginx", "-g", "daemon off;"]
|