# Usamos una imagen ligera de Python
FROM python:3.12-slim

# Evitar que Python genere archivos .pyc y que el buffer se sature
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
ENV TZ=Europe/Madrid

# Directorio de trabajo
WORKDIR /app

# Instalar dependencias del sistema necesarias y limpiar caché en un solo paso
RUN apt-get update && apt-get install -y \
    libpq-dev \
    gcc \
    gettext \
    && rm -rf /var/lib/apt/lists/*

# Copiar dependencias (Ajustado: asumiendo que están en deployments/)
COPY deployments/requirements.txt /app/
RUN pip install --no-cache-dir -r requirements.txt

# Copiar el resto del código del proyecto
# El contexto de docker-compose suele ser la raíz, por lo que copiamos todo a /app
COPY . /app/

# Exponer el puerto de Django
EXPOSE 8000

# Script de entrada (lo crearemos en el siguiente paso)
COPY deployments/entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh

ENTRYPOINT ["/entrypoint.sh"]