services: app: build: context: . dockerfile: Dockerfile ports: - "3000:3000" - "5173:80" environment: - DATABASE_URL=file:/data/deardiary.db - MEDIA_DIR=/data/media - JWT_SECRET=${JWT_SECRET:-change-me-in-production} - PORT=3000 - CORS_ORIGIN=${CORS_ORIGIN:-*} volumes: - ./data:/data restart: unless-stopped extra_hosts: - "host.docker.internal:host-gateway" healthcheck: test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/health"] interval: 30s timeout: 10s retries: 3