services: app: build: context: . dockerfile: Dockerfile args: NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL:-} restart: unless-stopped env_file: - path: ./.env required: false environment: PORT: 3000 HOSTNAME: 0.0.0.0 NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL:-} DATABASE_URL: ${DATABASE_URL:-file:/app/data/fiscal.sqlite} BETTER_AUTH_SECRET: ${BETTER_AUTH_SECRET:-} BETTER_AUTH_BASE_URL: ${BETTER_AUTH_BASE_URL:-https://fiscal.b11studio.xyz} BETTER_AUTH_ADMIN_USER_IDS: ${BETTER_AUTH_ADMIN_USER_IDS:-} BETTER_AUTH_TRUSTED_ORIGINS: ${BETTER_AUTH_TRUSTED_ORIGINS:-https://fiscal.b11studio.xyz} OPENCLAW_BASE_URL: ${OPENCLAW_BASE_URL:-http://openclaw:4000} OPENCLAW_API_KEY: ${OPENCLAW_API_KEY:-} OPENCLAW_MODEL: ${OPENCLAW_MODEL:-zeroclaw} OPENCLAW_AUTH_MODE: ${OPENCLAW_AUTH_MODE:-none} OPENCLAW_BASIC_AUTH_USERNAME: ${OPENCLAW_BASIC_AUTH_USERNAME:-} OPENCLAW_BASIC_AUTH_PASSWORD: ${OPENCLAW_BASIC_AUTH_PASSWORD:-} OPENCLAW_API_KEY_HEADER: ${OPENCLAW_API_KEY_HEADER:-} SEC_USER_AGENT: ${SEC_USER_AGENT:-Fiscal Clone } WORKFLOW_TARGET_WORLD: local WORKFLOW_LOCAL_DATA_DIR: ${WORKFLOW_LOCAL_DATA_DIR:-/app/.workflow-data} WORKFLOW_LOCAL_QUEUE_CONCURRENCY: ${WORKFLOW_LOCAL_QUEUE_CONCURRENCY:-100} volumes: - fiscal_sqlite_data:/app/data - fiscal_workflow_data:/app/.workflow-data depends_on: openclaw: condition: service_started healthcheck: test: ["CMD-SHELL", "wget -q --spider http://127.0.0.1:3000/api/health || exit 1"] interval: 30s timeout: 10s retries: 3 expose: - "3000" openclaw: image: ${OPENCLAW_IMAGE:-coolify-zeroclaw:local} build: context: ${OPENCLAW_BUILD_CONTEXT:-https://gitea-hs848cs8kgs840o8c8s8cwkk.b11studio.xyz/Francy51/coolify_ZeroClaw.git} dockerfile: ${OPENCLAW_DOCKERFILE:-Dockerfile} restart: unless-stopped expose: - "4000" volumes: fiscal_sqlite_data: fiscal_workflow_data: