# Imagen base para Node.js FROM node:16 AS frontend # Establecer el directorio de trabajo WORKDIR /app # Copiar archivos de frontend COPY package.json package-lock.json ./ # Instalar dependencias de Node.js RUN npm install # Copiar el código fuente de React COPY . . # Construir el frontend RUN npm run build # Imagen base para Python (Streamlit) FROM python:3.8 AS backend # Establecer el directorio de trabajo WORKDIR /app # Copiar las dependencias de Python COPY requirements.txt ./ # Instalar dependencias de Python RUN pip install --no-cache-dir -r requirements.txt # Copiar código Python (backend) y el frontend construido COPY --from=frontend /app/build /app/frontend # Copiar el archivo de Streamlit COPY app.py ./ # Exponer el puerto para Streamlit EXPOSE 8501 # Comando para ejecutar Streamlit CMD ["streamlit", "run", "app.py"]