Files
kbcrm/env-sample
T
gg 3b3e2893e5 feat(deploy): Multi-Stage-Docker-Build fuer automatisches Deployment
- App_Server/Dockerfile: Build-Context auf Repo-Root, COPY-Pfade
  angepasst, ENTRYPOINT aktiviert, dev-Stage mit inittypescriptdev.sh
- NGINX_Server/Dockerfile: Multi-Stage mit frontend-Stage (Node.js baut
  TypeScript), statische Dateien und Config-Templates ins Image kopiert
- docker-compose.base.yaml: Context auf '.', python-venv Volume entfernt,
  NGINX_STATIC_DIR/CONFIG_TEMPLATE_DIR bind-mounts in Dev verschoben
- docker-compose.dev.yaml: python-venv-dev Volume, APP_DEBUG=true,
  nginx-proxy mit bind-mounts fuer statische Dateien und Templates
- docker-compose.prod.yaml: Code-bind-mount entfernt, nginx-proxy extends
- approot.py: absolute Pfade, Debug-Modus via APP_DEBUG Umgebungsvariable
- init.sh: vereinfacht (kein cd/pip, absolute Pfade)
- inireader.mjs: absoluter Pfad fuer config.ini
- package.json: scripts.build (tsc + rollup) ergaenzt
- .dockerignore, deploy-kbcrm-test.sh, deploy-kbcrm-prod.sh erstellt
- docker-compose.save.yaml geloescht
- env-sample: BUILD_ENVIRONMENT nach oben, Dev-only Variablen markiert

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-09-13 18:40:55 +02:00

72 lines
3.0 KiB
Plaintext

# =============================================================================
# BUILD-UMGEBUNG (zentrale Einstellung — hier dev/prod umschalten)
# =============================================================================
# Bestimmt, welche docker-compose-*.yaml neben der base-Datei geladen wird.
# COMPOSE_FILE wird von Docker Compose automatisch ausgewertet (auch via .env);
# mehrere Dateien werden durch ':' getrennt und nacheinander gemerged.
BUILD_ENVIRONMENT=dev
COMPOSE_FILE=docker-compose.base.yaml:docker-compose.${BUILD_ENVIRONMENT}.yaml
# Parameter für NGINX-Server
NGINX_VERSION=mainline-alpine
# SSL für NGINX aktivieren (true) oder deaktivieren (false).
# Bei false muss NGINX_HOST_PORT angepasst werden (z.B. 8080 statt 443).
NGINX_USE_SSL=true
NGINX_HOST_PORT=443
NGINX_SERVER_NAME=kbp_crm.mylocal.de
# NGINX_STATIC_DIR: nur in Dev benoetigt (bind-mount fuer statische Dateien).
# In Prod liegen die statischen Dateien im NGINX-Image.
NGINX_STATIC_DIR=/home/schoschi/Entwicklung/Projekte_Runden/kbcrm/NGINX_Server/html
# NGINX_CONFIG_TEMPLATE_DIR: nur in Dev benoetigt (bind-mount fuer NGINX-Templates).
# In Prod liegen die Templates im NGINX-Image.
NGINX_CONFIG_TEMPLATE_DIR=/home/schoschi/Entwicklung/Projekte_Runden/kbcrm/NGINX_Server/configtemplates
NGINX_CERTS=/home/schoschi/Entwicklung/Projekte_Runden/kbcrm/NGINX_Server/certs
NGINX_CERT=wildcard.mylocal.crt
NGINX_CERT_KEY=wildcard.mylocal.key
# Parameter for Python App-Server
PYTHON_VERSION=slim-bookworm
# PYTHON_APP_DIR entfaellt — Code wird in Prod ins Image gebaut (Option B).
# In Dev wird PYTHON_DEV_DIR als bind-mount verwendet (siehe docker-compose.dev.yaml).
PYTHON_DEV_DIR=/home/schoschi/Entwicklung/Projekte_Runden/kbcrm
PYTHON_DB_DIR=/home/schoschi/Entwicklung/Projekte_Runden/kbcrm/App_Server/data
# PYTHON_ENV_DIR=/home/schoschi/Entwicklung/Projekte_Runden/kbcrm/App_Server/env
# Parameter für Dev-Mode (Development-Container für VS-Code)
NODE_VERSION=lts
NPM_VERSION=latest
# =============================================================================
# ZITADEL OIDC SETTINGS
# =============================================================================
# Zitadel Issuer URL (OIDC Provider)
# Example: https://your-zitadel-instance.zitadel.cloud
ZITADEL_ISSUER=https://id.vmlx.de
# OIDC Client ID from Zitadel
ZITADEL_CLIENT_ID=###client##
# OIDC Client Secret from Zitadel # not for PKCE
ZITADEL_CLIENT_SECRET=####secret ###
# Redirect URI for OIDC callback
# Default: http://localhost:5000/auth/callback
#ZITADEL_REDIRECT_URI=http://localhost:8000/auth/callback
ZITADEL_REDIRECT_URI=https://kbp_crm.mylocal.de/auth/callback
# OIDC Scopes (comma-separated)
ZITADEL_SCOPES=openid,profile,email
# =============================================================================
# EMAIL SETTINGS (for notifications)
# =============================================================================
# SMTP Server
# SMTP_SERVER=localhost
# SMTP_PORT=587
# SMTP_USERNAME=
# SMTP_PASSWORD=
# SMTP_USE_TLS=true
# EMAIL_FROM=formeleon@yourdomain.com