forked from DreamLab-AI/VisionClaw
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.browsercontainer.yml
More file actions
63 lines (62 loc) · 2.36 KB
/
Copy pathdocker-compose.browsercontainer.yml
File metadata and controls
63 lines (62 loc) · 2.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
services:
browsercontainer:
container_name: browsercontainer
hostname: browsercontainer
build:
context: ./browsercontainer
dockerfile: Dockerfile
restart: unless-stopped
healthcheck:
test: ["CMD", "bash", "/opt/browsercontainer/healthcheck.sh"]
interval: 15s
timeout: 10s
retries: 3
start_period: 30s
environment:
- DISPLAY=:2
# ARC-002: GPU selection is operator-configurable. Default `all`; pin a
# specific GPU by exporting NVIDIA_VISIBLE_DEVICES (e.g. a stable
# GPU-<uuid>) in the environment / .env before compose up.
- NVIDIA_VISIBLE_DEVICES=${NVIDIA_VISIBLE_DEVICES:-all}
- NVIDIA_DRIVER_CAPABILITIES=compute,utility,graphics
- SIDECAR_TRANSPORT=sse
- SIDECAR_PORT=8931
- XDG_RUNTIME_DIR=/tmp/xdg-runtime
- HOME=/home/devuser
# Treat dev/LAN origins as secure contexts. Required for:
# - SharedArrayBuffer (zero-copy position pipeline)
# - navigator.gpu (WebGPU) — Chrome refuses to expose `gpu` on
# non-secure origins. Without `visionclaw_container:3001` in
# this list, the client silently falls back to WebGL and the
# embedding-cloud rendering path swamps the GPU.
- TREAT_AS_SECURE=http://visionclaw_container:3001,http://visionclaw_container:3000,http://visionclaw_container:4000,http://192.168.2.132:3001,http://192.168.2.132:3000,http://host.docker.internal:3001,http://host.docker.internal:3000
deploy:
resources:
limits:
cpus: '4'
memory: 8G
reservations:
cpus: '2'
memory: 4G
devices:
- driver: nvidia
capabilities: [gpu, compute, utility, graphics]
# ARC-002: operator-configurable GPU; matches NVIDIA_VISIBLE_DEVICES.
device_ids: ['${NVIDIA_VISIBLE_DEVICES:-all}']
ports:
# VNC: view Chrome desktop
- "0.0.0.0:5903:5903"
# MCP SSE: chrome-devtools-mcp bridge (agents connect here)
- "0.0.0.0:8931:8931"
# CDP proxy: host:9222 → socat:9223 → Chrome:9222
# socat rebinds so CDP /json/list returns connectable ws:// URLs
- "0.0.0.0:9222:9223"
networks:
- visionclaw
shm_size: '2gb'
extra_hosts:
- "host.docker.internal:host-gateway"
networks:
visionclaw:
external: true
name: visionclaw_network