# Lokale Entwicklung: aus dem Quellcode bauen, Hot Reload, offene Ports. # Kopieren nach `docker-compose.override.yml` – die Datei wird nicht eingecheckt. # # Compose liest sie automatisch zusätzlich zu docker-compose.yml. services: moneyfy-db: # Datenbank direkt erreichbar, etwa 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" # Im Entwicklungsbetrieb sollen keine Mails hinausgehen. SCHEDULER_ENABLED: "false" # Der Vite-Server läuft auf einem anderen Port und braucht daher CORS. 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 reicht /api an das Backend weiter, siehe vite.config.ts. VITE_API_PROXY: http://moneyfy-backend:8000 volumes: - ./frontend/src:/app/src - ./frontend/public:/app/public - ./frontend/index.html:/app/index.html:ro - ./frontend/vite.config.ts:/app/vite.config.ts:ro - ./frontend/tailwind.config.js:/app/tailwind.config.js:ro ports: - "127.0.0.1:5173:5173" # Der Entwicklungsserver kennt /healthz nicht. healthcheck: disable: true