version: "3.7" services: windmill_server: container_name: windmill_server image: ghcr.io/windmill-labs/windmill:main deploy: replicas: 1 restart: unless-stopped ports: - 8000:8000 environment: - DATABASE_URL=${DATABASE_URL} - BASE_URL=https://${WM_BASE_URL} - RUST_LOG=info ## You can set the number of workers to > 0 and not need any separate worker service - NUM_WORKERS=0 - DISABLE_SERVER=false - METRICS_ADDR=false volumes: - ./oauth.json/:/usr/src/app/oauth.json windmill_worker: image: ghcr.io/windmill-labs/windmill:main deploy: replicas: 3 restart: unless-stopped environment: - DATABASE_URL=${DATABASE_URL} - BASE_URL=http://${WM_BASE_URL} - BASE_INTERNAL_URL=http://windmill_server:8000 - RUST_LOG=info - NUM_WORKERS=1 - DISABLE_SERVER=true - KEEP_JOB_DIR=false - DENO_PATH=/usr/bin/deno - PYTHON_PATH=/usr/local/bin/python3 - METRICS_ADDR=false # to mount the worker folder to debug,, KEEP_JOB_DIR=true and mount /tmp/windmill volumes: - worker_dependency_cache:/tmp/windmill/cache # - ./oauth.json/:/usr/src/app/oauth.json lsp: container_name: lsp image: ghcr.io/windmill-labs/windmill-lsp:latest restart: unless-stopped ports: - 3001:3001 caddy: container_name: caddy image: caddy:2.5.2-alpine restart: unless-stopped volumes: - ./Caddyfile:/etc/caddy/Caddyfile ports: - 80:80 - 443:443 environment: - BASE_URL=${WM_BASE_URL} volumes: db_data: null worker_dependency_cache: null