e145edaa90
Big Move: vom backend-only-Setup zum vollständigen Container-Stack. 📁 Neue Struktur - /.env (lokal, nicht getrackt) – zentrale Konfiguration für Dev + Docker - /.env.example – Template mit allen Variablen - /data/{db,uploads,factory-defaults,backups}/ – Bind-Mounts statt Volumes (auf Wunsch: Daten bleiben im Projektverzeichnis) - /backend/Dockerfile – Multi-Stage Build (Frontend + Backend) - /backend/docker-entrypoint.sh – wartet auf DB, prisma db push, optional seed 🐳 docker-compose.yml (neu konsolidiert) - mariadb 10.11 mit Bind-Mount ./data/db - opencrm-app (Backend serviert Frontend statisch in production) - adminer mit Theme pepa-linha-dark als DB-UI - Ports + Pfade + Secrets alle aus .env 🔧 Backend - index.ts dotenv-Loader: lädt zuerst Root /.env, dann backend/.env als Fallback. Funktioniert nahtlos für npm run dev und für Container. - backend/.env.example als Legacy-Fallback dokumentiert 📝 README - Quick-Start mit Docker als empfohlener Default (3 Befehle) - Tabelle der Daten-Verzeichnisse - Hinweis auf RUN_SEED=true beim ersten Start ⚙ Konfigurierbar via .env - OPENCRM_PORT (Backend extern), ADMINER_PORT (DB-UI), DB_PORT - Daten-Pfade (DATA_DIR, DB_DATA_DIR, UPLOADS_DIR etc.) - DB_NAME/USER/PASSWORD, JWT_SECRET, ENCRYPTION_KEY - ADMINER_DESIGN (Theme-Auswahl) Hinweis: Vor dem ersten `docker compose up -d` muss das laufende `npm run dev`-Backend gestoppt werden (Port + DB-Conflict). Das alte Volume `opencrm_mariadb_data` bleibt unangetastet als Notfall-Backup. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
38 lines
629 B
Plaintext
38 lines
629 B
Plaintext
# Root-Gitignore: gemeinsame Patterns für Repo-Root + nested Verzeichnisse
|
||
# (backend/, frontend/, docker/ haben zusätzlich eigene .gitignore-Files)
|
||
|
||
# Environment – echte Secrets blocken, .env.example weiter mittracken
|
||
.env
|
||
.env.local
|
||
.env.*.local
|
||
!.env.example
|
||
|
||
# OS
|
||
.DS_Store
|
||
Thumbs.db
|
||
|
||
# IDE
|
||
.idea/
|
||
.vscode/
|
||
*.swp
|
||
*.swo
|
||
|
||
# Logs
|
||
*.log
|
||
npm-debug.log*
|
||
|
||
# Temp
|
||
tmp/
|
||
*.tmp
|
||
*.bak
|
||
|
||
# Docker-Bind-Mounts: Inhalt nicht tracken, Verzeichnisstruktur via .gitkeep behalten
|
||
data/db/*
|
||
!data/db/.gitkeep
|
||
data/uploads/*
|
||
!data/uploads/.gitkeep
|
||
data/factory-defaults/*
|
||
!data/factory-defaults/.gitkeep
|
||
data/backups/*
|
||
!data/backups/.gitkeep
|