22 lines
498 B
Docker
22 lines
498 B
Docker
FROM node:18-alpine
|
|
|
|
WORKDIR /app
|
|
|
|
# Instalar dependencias primero (mejor cache de capas)
|
|
COPY backend/package*.json ./
|
|
RUN npm install --production
|
|
|
|
# Copiar el código del backend
|
|
COPY backend/ ./
|
|
|
|
# Copiar el frontend empaquetado (no se monta como volumen en producción)
|
|
COPY frontend/ ./frontend/
|
|
|
|
# Script de entrada: crea datos/carpetas por defecto si no existen en el volumen
|
|
RUN chmod +x ./docker-entrypoint.sh
|
|
|
|
EXPOSE 3000
|
|
|
|
ENTRYPOINT ["./docker-entrypoint.sh"]
|
|
CMD ["node", "server.js"]
|