- Neue Docker-Struktur: docker/{dev,prod}/ für klare Trennung
- Entfernt: docker-compose.override.yml (problematisch)
- Hinzugefügt: ./dev.sh und ./prod.sh Scripts für einfache Bedienung
- Container-spezifische Konfigurationen in docker/{dev,prod}/*/config/
- Aktualisierte READMEs für neue Struktur
- Backend-Daten in .gitignore hinzugefügt
- Bereinigt: Veraltete Dockerfiles und Konfigurationsdateien
Jetzt: Wartungsfreundlich, keine Verwirrung zwischen Umgebungen
1.9 KiB
1.9 KiB
Development Setup
Schnellstart
Starten (Development Environment)
# Mit Script (empfohlen):
./dev.sh
# Oder manuell:
docker compose -f docker/dev/docker-compose.yml up -d
Zugriff
- Frontend: http://localhost:3000 (Hot Module Reloading aktiv)
- Backend: http://localhost:5001 (API)
- Slideshow: http://localhost:3000/slideshow
Logs verfolgen
# Alle Services:
docker compose -f docker/dev/docker-compose.yml logs -f
# Nur Frontend:
docker compose -f docker/dev/docker-compose.yml logs -f frontend-dev
# Nur Backend:
docker compose -f docker/dev/docker-compose.yml logs -f backend-dev
Entwicklung
Frontend-Entwicklung
- Code in
frontend/src/editieren → Hot Module Reload übernimmt Änderungen - Volumes: Source-Code wird live in Container gemountet
- Container-Namen:
image-uploader-frontend-dev
Backend-Entwicklung
- Code in
backend/src/editieren → Container restart für Änderungen - Container-Namen:
image-uploader-backend-dev - Environment:
NODE_ENV=development
Konfiguration anpassen
- Frontend:
docker/dev/frontend/config/.env - Backend:
docker/dev/backend/config/.env - Nginx:
docker/dev/frontend/nginx.conf
Container-Management
# Status anzeigen:
docker compose -f docker/dev/docker-compose.yml ps
# Container neustarten:
docker compose -f docker/dev/docker-compose.yml restart
# Container neu bauen:
docker compose -f docker/dev/docker-compose.yml build --no-cache
# Stoppen:
docker compose -f docker/dev/docker-compose.yml down
# Mit Volumes löschen:
docker compose -f docker/dev/docker-compose.yml down -v
Shell-Zugriff
# Frontend Container:
docker compose -f docker/dev/docker-compose.yml exec frontend-dev bash
# Backend Container:
docker compose -f docker/dev/docker-compose.yml exec backend-dev bash
docker compose exec image-uploader-frontend nginx -s reload docker compose down