This repository has been archived on 2026-02-15. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
breakpilot-pwa/docs-src/getting-started/environment-setup.md
Benjamin Admin bfdaf63ba9 fix: Restore all files lost during destructive rebase
A previous `git pull --rebase origin main` dropped 177 local commits,
losing 3400+ files across admin-v2, backend, studio-v2, website,
klausur-service, and many other services. The partial restore attempt
(660295e2) only recovered some files.

This commit restores all missing files from pre-rebase ref 98933f5e
while preserving post-rebase additions (night-scheduler, night-mode UI,
NightModeWidget dashboard integration).

Restored features include:
- AI Module Sidebar (FAB), OCR Labeling, OCR Compare
- GPU Dashboard, RAG Pipeline, Magic Help
- Klausur-Korrektur (8 files), Abitur-Archiv (5+ files)
- Companion, Zeugnisse-Crawler, Screen Flow
- Full backend, studio-v2, website, klausur-service
- All compliance SDKs, agent-core, voice-service
- CI/CD configs, documentation, scripts

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 09:51:32 +01:00

259 lines
4.5 KiB
Markdown

# Entwickler-Guide: Umgebungs-Setup
Dieser Guide erklärt das tägliche Arbeiten mit den Dev/Staging/Prod-Umgebungen.
## Schnellstart
```bash
# 1. Wechsle in das Projektverzeichnis
cd /Users/benjaminadmin/Projekte/breakpilot-pwa
# 2. Starte die Entwicklungsumgebung
./scripts/start.sh dev
# 3. Prüfe den Status
./scripts/status.sh
```
## Täglicher Workflow
### Morgens: Entwicklung starten
```bash
# Auf develop-Branch wechseln
git checkout develop
# Neueste Änderungen holen (falls Remote konfiguriert)
git pull origin develop
# Umgebung starten
./scripts/start.sh dev
```
### Während der Arbeit
```bash
# Logs eines Services anzeigen
docker compose logs -f backend
# Service neustarten
docker compose restart backend
# Status prüfen
./scripts/status.sh
```
### Änderungen committen
```bash
# Änderungen anzeigen
git status
# Dateien hinzufügen
git add .
# Commit erstellen
git commit -m "Feature: Beschreibung der Änderung"
```
### Abends: Umgebung stoppen
```bash
./scripts/stop.sh dev
```
## Umgebung wechseln
### Von Dev zu Staging
```bash
# Stoppe Dev
./scripts/stop.sh dev
# Starte Staging
./scripts/start.sh staging
```
### Zurück zu Dev
```bash
./scripts/stop.sh staging
./scripts/start.sh dev
```
## Code promoten
### Dev → Staging (nach erfolgreichem Test)
```bash
# Stelle sicher, dass alle Änderungen committet sind
git status
# Promote zu Staging
./scripts/promote.sh dev-to-staging
# Push zu Remote (falls konfiguriert)
git push origin staging
```
### Staging → Production (Release)
```bash
# Nur nach vollständigem Test auf Staging!
./scripts/promote.sh staging-to-prod
# Push zu Remote
git push origin main
```
## Nützliche Befehle
### Docker
```bash
# Alle Container anzeigen
docker compose ps
# Logs folgen
docker compose logs -f [service]
# In Container einsteigen
docker compose exec backend bash
docker compose exec postgres psql -U breakpilot -d breakpilot_dev
# Container neustarten
docker compose restart [service]
# Alle Container stoppen und entfernen
docker compose down
# Mit Volumes löschen (VORSICHT!)
docker compose down -v
```
### Git
```bash
# Aktuellen Branch anzeigen
git branch --show-current
# Alle Branches anzeigen
git branch -v
# Änderungen zwischen Branches anzeigen
git diff develop..staging
```
### Datenbank
```bash
# Direkt mit PostgreSQL verbinden (Dev)
docker compose exec postgres psql -U breakpilot -d breakpilot_dev
# Backup erstellen
./scripts/backup.sh
# Backup wiederherstellen
./scripts/restore.sh backup-file.sql.gz
```
## Häufige Probleme
### "Port already in use"
Ein anderer Prozess oder Container verwendet den Port.
```bash
# Laufende Container prüfen
docker ps
# Alte Container stoppen
docker compose down
# Prozess auf Port finden (z.B. 8000)
lsof -i :8000
```
### Container startet nicht
```bash
# Logs prüfen
docker compose logs backend
# Container neu bauen
docker compose build backend
docker compose up -d backend
```
### Datenbank-Verbindungsfehler
```bash
# Prüfen ob PostgreSQL läuft
docker compose ps postgres
# PostgreSQL-Logs prüfen
docker compose logs postgres
# Neustart
docker compose restart postgres
```
### Falsche Umgebung aktiv
```bash
# Status prüfen
./scripts/status.sh
# Auf richtige Umgebung wechseln
./scripts/env-switch.sh dev
```
## Umgebungs-Dateien
| Datei | Beschreibung | Im Git? |
|-------|--------------|---------|
| `.env` | Aktive Umgebung | Nein |
| `.env.dev` | Development Werte | Ja |
| `.env.staging` | Staging Werte | Ja |
| `.env.prod` | Production Werte | **NEIN** |
| `.env.example` | Template | Ja |
## Ports Übersicht
### Development
| Service | Port | URL |
|---------|------|-----|
| Backend | 8000 | http://localhost:8000 |
| Website | 3000 | http://localhost:3000 |
| Consent Service | 8081 | http://localhost:8081 |
| PostgreSQL | 5432 | localhost:5432 |
| Mailpit UI | 8025 | http://localhost:8025 |
| MinIO Console | 9001 | http://localhost:9001 |
### Staging
| Service | Port | URL |
|---------|------|-----|
| Backend | 8001 | http://localhost:8001 |
| PostgreSQL | 5433 | localhost:5433 |
| Mailpit UI | 8026 | http://localhost:8026 |
| MinIO Console | 9003 | http://localhost:9003 |
## Hilfe
```bash
# Status und Übersicht
./scripts/status.sh
# Script-Hilfe
./scripts/env-switch.sh --help
./scripts/promote.sh --help
```
## Verwandte Dokumentation
- [Architektur: Umgebungen](../architecture/environments.md)
- [Secrets Management](../architecture/secrets-management.md)
- [System-Architektur](../architecture/system-architecture.md)