-
Notifications
You must be signed in to change notification settings - Fork 44
Expand file tree
/
Copy pathdocker-compose.browser.yml
More file actions
78 lines (74 loc) · 2.12 KB
/
docker-compose.browser.yml
File metadata and controls
78 lines (74 loc) · 2.12 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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# Agent Relay - Browser Testing Workspace
#
# Extends docker-compose.dev.yml with browser testing capabilities.
#
# Usage:
# docker compose -f docker-compose.dev.yml -f docker-compose.browser.yml up
#
# Access:
# - Dashboard: http://localhost:3888
# - VNC (web): http://localhost:6080/vnc.html
# - VNC (native): vnc://localhost:5900
version: '3.8'
services:
# Browser-enabled workspace with full testing capabilities
workspace-browser:
build:
context: .
dockerfile: deploy/workspace/Dockerfile.browser
ports:
- "3888:3888" # Dashboard/API
- "3889:3889" # WebSocket
- "5900:5900" # VNC direct
- "6080:6080" # noVNC web interface
environment:
WORKSPACE_ID: browser-workspace
SUPERVISOR_ENABLED: "true"
MAX_AGENTS: "10"
# Browser display settings
DISPLAY: ":99"
SCREEN_WIDTH: "1920"
SCREEN_HEIGHT: "1080"
SCREEN_DEPTH: "24"
# VNC settings
VNC_ENABLED: "true"
VNC_PORT: "5900"
NOVNC_ENABLED: "true"
NOVNC_PORT: "6080"
volumes:
# Persistent data
- workspace_browser_data:/data
# Mount repos
- ./:/workspace/relay:ro
# Docker socket for spawning containers
- /var/run/docker.sock:/var/run/docker.sock
# Required for some browser operations
shm_size: '2gb'
# Security options for browser sandboxing
security_opt:
- seccomp:unconfined
depends_on:
- cloud
# Alternative: Rootless Docker-in-Docker workspace
# Uses sysbox runtime for secure nested containers
workspace-dind:
build:
context: .
dockerfile: deploy/workspace/Dockerfile.browser
runtime: sysbox-runc # Requires sysbox installed on host
ports:
- "3898:3888"
- "6090:6080"
environment:
WORKSPACE_ID: dind-workspace
SUPERVISOR_ENABLED: "true"
MAX_AGENTS: "10"
# DinD mode - Docker daemon runs inside container
DOCKER_HOST: "unix:///var/run/docker.sock"
volumes:
- workspace_dind_data:/data
profiles:
- dind # Only start with: --profile dind
volumes:
workspace_browser_data:
workspace_dind_data: