| 1 | amends "../../config/Service.pkl" |
| 2 | |
| 3 | meta { name = "OpenClaw"; access = "infra-admin" } |
| 4 | enabled = (read?("env:STUDIO_LOCAL_AI") ?? "false") == "true" |
| 5 | stageIsolation = "fresh" |
| 6 | healthyDeadline = "30m" |
| 7 | healthRestartGrace = "30m" |
| 8 | prepare = "prepare.py" |
| 9 | setup = "setup.py" |
| 10 | |
| 11 | containers { |
| 12 | ["gateway"] { |
| 13 | image = "docker.io/library/nginx@sha256:17ae566734b63632e543c907ba74757e0c1a25d812ab9f10a07a6bed98dd199c" |
| 14 | hostNetwork = true |
| 15 | entrypoint = "/usr/sbin/nginx" |
| 16 | args { "-c"; "/cfg/nginx.conf"; "-g"; "daemon off;" } |
| 17 | cpu = 200 |
| 18 | memory = 256 |
| 19 | http { |
| 20 | containerPort = 18889 |
| 21 | hostPort = 18889 |
| 22 | loopback = true |
| 23 | subdomain = "openclaw" |
| 24 | authRole = "infra-admin" |
| 25 | userHeader = "X-OpenClaw-User" |
| 26 | checkPath = "/healthz" |
| 27 | } |
| 28 | volumes { |
| 29 | ["/cfg"] {} |
| 30 | ["/etc/ssl/certs/ca-certificates.crt"] { src = "/var/lib/studio/ca-bundle.crt"; readOnly = true } |
| 31 | } |
| 32 | } |
| 33 | ["internet"] { |
| 34 | image = "docker.io/ubuntu/squid@sha256:8fafd41d6ddceb295d26eea9938321d825ac5351c7e46cf6a8aa5d093b8ed1ce" |
| 35 | hostNetwork = true |
| 36 | entrypoint = "/usr/sbin/squid" |
| 37 | args { "-N"; "-f"; "/config/squid.conf" } |
| 38 | cpu = 200 |
| 39 | memory = 256 |
| 40 | volumes { ["/config/squid.conf"] { config = "squid.conf" } } |
| 41 | } |
| 42 | } |