forked from val-lop20/Pagina-de-Asistencia-MAC
42 lines
1.1 KiB
Docker
42 lines
1.1 KiB
Docker
# Dockerfile para Backend Django - Entorno de Desarrollo
|
|
FROM python:3.11-slim
|
|
|
|
# Variables de entorno para Python
|
|
ENV PYTHONUNBUFFERED=1 \
|
|
PYTHONDONTWRITEBYTECODE=1 \
|
|
PIP_NO_CACHE_DIR=1 \
|
|
PIP_DISABLE_PIP_VERSION_CHECK=1
|
|
|
|
# Instalar dependencias del sistema
|
|
RUN apt-get update && apt-get install -y \
|
|
gcc \
|
|
postgresql-client \
|
|
git \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Crear directorio de trabajo
|
|
WORKDIR /app
|
|
|
|
# Copiar requirements y instalar dependencias Python
|
|
COPY backend/requirements.txt .
|
|
COPY backend/requirements-dev.txt .
|
|
RUN pip install --upgrade pip && \
|
|
pip install -r requirements.txt && \
|
|
pip install -r requirements-dev.txt && \
|
|
pip install gunicorn whitenoise
|
|
|
|
# Copiar código del backend
|
|
COPY backend/ .
|
|
|
|
# Crear directorio para archivos estáticos y media
|
|
RUN mkdir -p /app/staticfiles /app/media /app/logs
|
|
|
|
# Crear directorio para reportes de cobertura
|
|
RUN mkdir -p /app/htmlcov
|
|
|
|
# Exponer puerto
|
|
EXPOSE 8000
|
|
|
|
# Comando para ejecutar con Django development server
|
|
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
|