feat: Add uv Docker, Postgres, and company linking

Introduces uv-based Docker workflow with non-root runtime, cached installs, and uv-run for web and Celery. Updates docker-compose to Postgres + Redis, loads .env, and removes source bind mount for reproducible builds.

Switches settings to use Postgres when env is present with SQLite fallback; broadens allowed hosts for containerized development. Adds psycopg2-binary and updates sample env for Redis in Docker.

Adds company scoping to external data models and links sessions during ingestion; provides management commands to seed a Jumbo company/users and sync external chat data into the dashboard.

Includes .dockerignore, TypeScript config and typings, and minor template/docs tweaks.

Requires database migration.
This commit is contained in:
2025-11-05 20:22:07 +01:00
parent 81d1469e18
commit 2236eeb9a5
21 changed files with 563 additions and 51 deletions

View File

@@ -1,8 +1,20 @@
# .env.sample - rename to .env and update with actual credentials
# Django settings
# Generate secret with e.g. `openssl rand -hex 32`
DJANGO_SECRET_KEY=your-secure-secret-key
DJANGO_DEBUG=True
# Database configuration (optional - local development uses SQLite by default)
# Uncomment these to use PostgreSQL locally:
# DATABASE_URL=postgresql://postgres:postgres@localhost:5432/dashboard_db
# POSTGRES_DB=dashboard_db
# POSTGRES_USER=postgres
# POSTGRES_PASSWORD=postgres
# POSTGRES_HOST=localhost
# POSTGRES_PORT=5432
#
# Note: Docker Compose automatically uses PostgreSQL via docker-compose.yml environment variables
# External API credentials
EXTERNAL_API_USERNAME=your-api-username
EXTERNAL_API_PASSWORD=your-api-password
@@ -10,7 +22,7 @@ EXTERNAL_API_PASSWORD=your-api-password
# Redis settings for Celery
REDIS_URL=redis://localhost:6379/0
CELERY_BROKER_URL=redis://localhost:6379/0
CELERY_RESULT_BACKEND=redis://localhost:6379/0
CELERY_RESULT_BACKEND=redis://redis:6379/0
# Celery Task Schedule (in seconds)
CHAT_DATA_FETCH_INTERVAL=3600