version: "3.7" services: windmill-db: container_name: {{ customer }}-windmill-db # deploy: # replicas: 1 image: postgres:15 restart: always volumes: - {{ customer }}-windmill-postgres:/var/lib/postgresql/data - {{ customer }}-windmill-backups:/tmp/backups ports: - "127.0.0.1:3038:5432" environment: POSTGRES_PASSWORD: '{{ windmill_database_password }}' POSTGRES_DB: windmill healthcheck: test: ["CMD-SHELL", "pg_isready -U postgres"] interval: 10s timeout: 5s retries: 5 networks: {{ customer }}-windmill: ipv4_address: 172.20.15.2 windmill_server: container_name: {{ customer }}-windmill-server image: ghcr.io/windmill-labs/windmill:main pull_policy: always # deploy: # replicas: 1 restart: always labels: - "diun.enable=true" ports: - "127.0.0.1:3039:8000" environment: - DATABASE_URL=postgres://postgres:{{ windmill_database_password }}@windmill-db:5432/windmill?sslmode=disable - BASE_URL='https://{{ domain_windmill }}' - RUST_LOG=info - NUM_WORKERS=0 - DISABLE_SERVER=false - METRICS_ADDR=false - REQUEST_SIZE_LIMIT=50097152 #- LICENSE_KEY=${WM_LICENSE_KEY} depends_on: windmill-db: condition: service_healthy volumes: - ./oauth.json:/usr/src/app/oauth.json - {{ customer }}-windmill-backups:/tmp/backups networks: {{ customer }}-windmill: ipv4_address: 172.20.15.3 windmill_worker: container_name: {{ customer }}-windmill-worker image: ghcr.io/windmill-labs/windmill:main pull_policy: always # deploy: # replicas: 1 restart: always environment: - DATABASE_URL=postgres://postgres:{{ windmill_database_password }}@windmill-db:5432/windmill?sslmode=disable - BASE_URL='https://{{ domain_windmill }}' - RUST_LOG=info - DISABLE_SERVER=true - KEEP_JOB_DIR=false - METRICS_ADDR=false - WORKER_TAGS=deno,python3,go,bash,powershell,dependency,flow,hub,other,bun #- LICENSE_KEY=${WM_LICENSE_KEY} depends_on: windmill-db: condition: service_healthy volumes: - /var/run/docker.sock:/var/run/docker.sock:ro - ./oauth.json:/usr/src/app/oauth.json - {{ customer }}-windmill-worker-cache:/tmp/windmill/cache networks: {{ customer }}-windmill: ipv4_address: 172.20.15.4 windmill_worker_native: container_name: {{ customer }}-windmill-worker-native image: ghcr.io/windmill-labs/windmill:main pull_policy: always # deploy: # replicas: 1 # resources: # limits: # cpus: "0.25" # memory: 512M restart: always environment: - DATABASE_URL=postgres://postgres:{{ windmill_database_password }}@windmill-db:5432/windmill?sslmode=disable - BASE_URL='https://{{ domain_windmill }}' - RUST_LOG=info - DISABLE_SERVER=true - KEEP_JOB_DIR=false - METRICS_ADDR=false - NUM_WORKERS=4 - WORKER_TAGS=nativets,postgresql,mysql,graphql,snowflake depends_on: windmill-db: condition: service_healthy volumes: # See Oauth (https://docs.windmill.dev/docs/misc/setup_oauth) - ./oauth.json:/usr/src/app/oauth.json networks: {{ customer }}-windmill: ipv4_address: 172.20.15.5 lsp: container_name: {{ customer }}-windmill-lsp image: ghcr.io/windmill-labs/windmill-lsp:latest restart: always ports: - "127.0.0.1:3041:3001" volumes: - {{ customer }}-windmill-lsp-cache:/root/.cache networks: {{ customer }}-windmill: ipv4_address: 172.20.15.6 multiplayer: container_name: {{ customer }}-windmill-multiplayer image: ghcr.io/windmill-labs/windmill-multiplayer:latest # deploy: # replicas: 0 # Set to 1 to enable multiplayer, only available on Enterprise Edition restart: always ports: - "127.0.0.1:3047:3002" networks: {{ customer }}-windmill: ipv4_address: 172.20.15.7 caddy: container_name: {{ customer }}-windmill-caddy image: caddy:2.5.2-alpine restart: always volumes: - ./Caddyfile:/etc/caddy/Caddyfile - {{ customer }}-windmill-backups:/tmp/backups ports: - "127.0.0.1:3014:80" environment: BASE_URL: ":80" networks: {{ customer }}-windmill: ipv4_address: 172.20.15.8 networks: {{ customer }}-windmill: ipam: driver: default config: - subnet: 172.20.15.0/28 gateway: 172.20.15.1 volumes: {{ customer }}-windmill-worker-cache: null {{ customer }}-windmill-lsp-cache: null {{ customer }}-windmill-postgres: #{{ customer }}-windmill-data: {{ customer }}-windmill-backups: