Saltar a contenido

Despliegue

El proyecto incluye Dockerfiles para aplicación y documentación, además de composes para desarrollo/producción.

Docker local

docker-compose.yml levanta PostgreSQL, Redis y el servicio web. En local monta el repositorio en /app, por lo que archivos generados dentro de la imagen pueden quedar ocultos por el bind mount.

Para que /docs/ funcione localmente, genera docs_site/ en tu máquina:

python -B manage.py build_docs --settings=config.settings.docs --no-strict

Producción

Dockerfile.prod usa dos etapas:

  1. docs-builder, que genera docs_site/;
  2. runtime, que instala dependencias, construye Tailwind, copia la app y copia la documentación generada.

El comando de arranque ejecuta migraciones, collectstatic, seed demo y Daphne.

Variables relevantes

Variable Uso
DJANGO_SECRET_KEY Firma criptográfica.
DJANGO_ALLOWED_HOSTS Hosts permitidos.
DB_* / POSTGRES_* Conexión e inicialización de PostgreSQL.
REDIS_URL Channel layer de notificaciones.
VAPID_* Web Push.

Verificación

docker compose ps
docker compose logs --tail=100 web
docker compose exec web python manage.py check --settings=config.settings.docker