- Repo-Struktur für Backend, Frontend, Dokumentation und Gitea-Workflows - FastAPI-Skeleton mit pydantic-settings und RFC-7807-artigem Fehlerformat - Vollständiges Datenmodell (15 Tabellen) als SQLAlchemy-2.0-Modelle - Alembic gegen die Async-Engine inklusive Erstmigration - Idempotenter Seed für den deutschen Kategoriebaum und Standardregeln - Endpunkte /api/health und /api/version - pytest-Infrastruktur mit transaktionsisolierten Fixtures Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014e7t8UpmoVNMtWivY5LiSH
42 lines
1.2 KiB
Plaintext
42 lines
1.2 KiB
Plaintext
# Lokale Entwicklung: Hot Reload und offene Ports.
|
||
# Kopieren nach `docker-compose.override.yml` – die Datei wird nicht eingecheckt.
|
||
services:
|
||
moneyfy-db:
|
||
# Datenbank direkt erreichbar, z. B. für psql oder einen SQL-Client.
|
||
ports:
|
||
- "127.0.0.1:5432:5432"
|
||
|
||
moneyfy-backend:
|
||
build:
|
||
context: ./backend
|
||
target: development
|
||
image: moneyfy-backend:dev
|
||
command: ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000", "--reload"]
|
||
environment:
|
||
ENVIRONMENT: development
|
||
DEBUG: "true"
|
||
COOKIE_SECURE: "false"
|
||
SCHEDULER_ENABLED: "false"
|
||
CORS_ORIGINS: http://localhost:5173
|
||
volumes:
|
||
# Quellcode einblenden, damit --reload greift.
|
||
- ./backend/app:/app/app:ro
|
||
- ./backend/alembic:/app/alembic:ro
|
||
ports:
|
||
- "127.0.0.1:8000:8000"
|
||
|
||
moneyfy-frontend:
|
||
build:
|
||
context: ./frontend
|
||
target: development
|
||
image: moneyfy-frontend:dev
|
||
command: ["npm", "run", "dev", "--", "--host", "0.0.0.0", "--port", "5173"]
|
||
environment:
|
||
VITE_API_BASE_URL: http://localhost:8000
|
||
volumes:
|
||
- ./frontend/src:/app/src
|
||
- ./frontend/public:/app/public
|
||
- ./frontend/index.html:/app/index.html:ro
|
||
ports:
|
||
- "127.0.0.1:5173:5173"
|