services: db: restart: unless-stopped api: restart: unless-stopped ports: !reset [] web: restart: unless-stopped ports: !override - "1236:80" healthcheck: test: ["CMD", "wget", "-q", "-O", "/dev/null", "http://127.0.0.1/health"] interval: 10s timeout: 5s retries: 10 n8n: # The review server already has a shared n8n instance. Keep the bundled service # available for an explicit fallback without starting a second instance by default. profiles: ["bundled-n8n"] restart: unless-stopped ports: !override - "127.0.0.1:15678:5678" healthcheck: test: [ "CMD", "node", "-e", "fetch('http://127.0.0.1:5678/healthz').then(r=>{if(!r.ok)process.exit(1)}).catch(()=>process.exit(1))", ] interval: 10s timeout: 5s retries: 20