ec81940178
- 0.7: UI-Design-Richtlinien (docs/ui-design-guidelines.md, 535 lines) - 0.8: Theme-Customization Backend (4 theme fields, migration 0023) - 0.9: Theme-Customization Frontend (SettingsTheme.tsx, themeStore.ts, live preview) - 0.10: RBAC-Audit (4 plugins secured, 53 routes with require_permission) - 0.11: LiteLLM-Cleanup (llm_client.py migrated from httpx to litellm) - 0.12: KI-Agent-Framework docs (plugin-development-guide.md, agent_capabilities field) - 0.13: Heartbeat configurable (ProactiveSettings, migration 0024, frontend UI) - 0.14: Unified Search Field-Level RBAC (resolve_permissions + filter_fields_by_permission) - 0.15: Undo/History-System (EntityHistory model, service, routes, migration 0025, HistoryViewer) - 0.16: Storage Backend (LocalStorage + S3Storage, DMS/attachments/mail updated) - 0.17: Import/Export unified Contact fields (firstname, surname, email_1, phone_1) - 0.18: .gitignore & Config-Cleanup (webui→frontend, python-jose removed, .env untracked) - 0.19: Mail-Salt Security-Fix (per-account random salt, migration 0026) - 0.20: AGPL replaced (PyMuPDF→pypdf, OnlyOffice→Collabora, LICENSE + THIRD_PARTY_LICENSES.md)
38 lines
1.7 KiB
Bash
38 lines
1.7 KiB
Bash
# =============================================================================
|
|
# .env.docker.example — template for `docker compose --env-file .env.docker up`
|
|
#
|
|
# DO NOT COMMIT .env.docker. It contains real secrets.
|
|
# Usage:
|
|
# cp .env.docker.example .env.docker
|
|
# $EDITOR .env.docker
|
|
# docker compose --env-file .env.docker up --build
|
|
# =============================================================================
|
|
|
|
# --- PostgreSQL (local container) ---------------------------------------------
|
|
POSTGRES_USER=crm_user
|
|
# Generate a strong password, e.g.:
|
|
# python -c "import secrets; print(secrets.token_urlsafe(24))"
|
|
POSTGRES_PASSWORD=STRONG_PASSWORD_HERE
|
|
POSTGRES_DB=crm_db
|
|
|
|
# --- CRM Application ----------------------------------------------------------
|
|
# The host "postgres" is the docker-compose service name (internal DNS).
|
|
# The DRIVER is asyncpg for production PostgreSQL.
|
|
DATABASE_URL=postgresql+asyncpg://crm_user:STRONG_PASSWORD_HERE@postgres:5432/crm_db
|
|
|
|
# --- AUTH_SECRET (REQUIRED, min 32 chars) ------------------------------------
|
|
# Session signing secret. MUST be at least 32 characters.
|
|
# Generate with:
|
|
# python -c "import secrets; print(secrets.token_urlsafe(48))"
|
|
AUTH_SECRET=MIN_32_CHARS_GENERATE_WITH_secrets_token_urlsafe_32_xxxxxxxxxxxx
|
|
|
|
# --- CORS / environment -------------------------------------------------------
|
|
# Comma-separated, NO wildcards. In dev we allow localhost:8000 (the app) and
|
|
# :5173 (e.g. Vite dev server). In production, restrict to the real domain.
|
|
CORS_ORIGINS=http://localhost:8000,http://localhost:5173
|
|
ENVIRONMENT=production
|
|
LOG_LEVEL=INFO
|
|
|
|
# --- bcrypt tuning (keep aligned with .env.example) --------------------------
|
|
BCRYPT_ROUNDS=12
|