Add Docker development workflow

This commit is contained in:
2026-07-22 22:42:28 +02:00
parent 00cb07f848
commit c991f493da
6 changed files with 127 additions and 5 deletions
+31 -3
View File
@@ -155,11 +155,39 @@ Die folgende Liste fasst die zentralen Anforderungen zusammen und zeigt den aktu
## Schneller Entwicklungsstart
### Mit Docker (empfohlen fuer kurze Sessions)
Voraussetzung: Docker Desktop mit aktivem Docker-Compose-Plugin.
1. Sicherstellen, dass keine direkt gestartete API und kein direkt gestartetes Frontend mehr auf Port 3000/3001 laufen.
2. `npm run docker:up`
3. Frontend unter `http://localhost:3001` oeffnen.
Beim Start fuehrt der API-Container ausstehende Drizzle-Migrationen und die Circuit-First-Schemapruefung aus. Die vorhandene SQLite-Datenbank wird ueber `./data:/app/data` eingebunden und bleibt nach `npm run docker:down` erhalten. Quellcodeaenderungen unter `src/` werden von beiden Entwicklungsservern automatisch erkannt.
Weitere Docker-Befehle:
- `npm run docker:down` - Frontend und API stoppen
- `npm run docker:logs` - laufende Containerlogs anzeigen
- `docker compose ps` - Status und Healthchecks anzeigen
- `Invoke-WebRequest http://localhost:3000/health` - API-Healthcheck pruefen
Bewusster Datenbank-Reset unter PowerShell:
1. `npm run docker:down`
2. `npm run db:backup`
3. `Remove-Item -LiteralPath .\data\leistungsbilanz.db`
4. `npm run docker:up`
Der Reset entfernt die aktive lokale Datenbank. Die zuvor erzeugte Sicherung bleibt unter `data/backups/` erhalten.
### Ohne Docker
1. `npm install`
2. `npm run db:generate`
3. `npm run db:migrate`
2. `npm run db:migrate`
3. `npm run db:verify:circuit-schema`
4. `npm run dev:api` (API auf Port 3000)
5. `npm run dev:web` (Frontend auf Port 3001)
5. In einem zweiten Terminal `npm run dev:web` (Frontend auf Port 3001)
## Wichtige Befehle