2025-05-12 23:53:58 -06:00

38 lines
899 B
Docker

# Etapa base: Python oficial
FROM python:3.10-slim as base
# Variables de entorno para producción
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
# Instala dependencias del sistema
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
libgeos-dev \
libspatialindex-dev \
libproj-dev \
proj-data \
proj-bin \
gdal-bin \
libgdal-dev \
python3-dev \
&& rm -rf /var/lib/apt/lists/*
# Crea directorio de trabajo
WORKDIR /app
# Copia requirements primero (mejor cacheo)
COPY requirements.txt .
# Instala dependencias Python
RUN pip install --no-cache-dir -r requirements.txt
# Copia el resto del proyecto
COPY . .
# Expone el puerto del contenedor
EXPOSE 8000
# Comando por defecto para producción con Gunicorn
CMD ["gunicorn", "polisplexity.wsgi:application", "--bind", "0.0.0.0:8000", "--workers=3", "--timeout=120"]