services: smartup: build: context: . dockerfile: Dockerfile container_name: smartup restart: unless-stopped ports: - "${BIND_HOST:-0.0.0.0}:${SERVER_PORT:-8899}:8000" extra_hosts: - "host.docker.internal:host-gateway" volumes: - ./data:/app/data environment: - ADMIN_EMAIL=admin@smartup.local - ADMIN_PASSWORD=${ADMIN_PASSWORD:?ADMIN_PASSWORD is required} - JWT_SECRET=${JWT_SECRET:?JWT_SECRET is required} - CORS_ORIGINS=${CORS_ORIGINS:-http://localhost:8899,http://127.0.0.1:8899} - DATABASE_URL=sqlite:////app/data/app.db - TZ=${TZ:-Asia/Shanghai} - UNHEALTHY_THRESHOLD=${UNHEALTHY_THRESHOLD:-3} logging: driver: json-file options: max-size: "10m" max-file: "3" init: true healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8000/healthz"] interval: 30s timeout: 10s retries: 3 start_period: 20s