Repository navigation
Expand file tree
/
Copy pathdocker-compose.dev.yml
More file actions
84 lines (81 loc) · 2.5 KB
/
Copy pathdocker-compose.dev.yml
File metadata and controls
84 lines (81 loc) · 2.5 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
79
80
81
82
83
84
services:
rmw_zenoh:
container_name: zenoh_daemon
build:
context: .
dockerfile: cyclo_manager_cli/cyclo_manager_cli/docker/Dockerfile.zenoh_daemon
restart: unless-stopped
network_mode: host
init: true
cyclo_manager:
container_name: cyclo_manager
build:
context: .
dockerfile: cyclo_manager/Dockerfile.dev
restart: unless-stopped
network_mode: host
volumes:
- /dev:/dev
- /dev/shm:/dev/shm
# Mount agent sockets directory (read-only for cyclo_manager)
- /var/run/robotis/agent_sockets:/agents
# Mount config file (for hot-reload on config changes)
- ./config.yml:/app/config.yml
# Mount Docker socket for Docker API access
- /var/run/docker.sock:/var/run/docker.sock
# Mount cyclo_manager source code for hot-reload
- ./cyclo_manager:/app/cyclo_manager
# Exclude __pycache__ and .pyc files from host
- /app/cyclo_manager/__pycache__
# Mount host root for disk usage and OS info
- /:/host_root:ro
- ${HOME}/cyclo_manager_ros_bags:/cyclo_manager_ros_bags
environment:
- CONFIG_FILE=/app/config.yml
- RECORDINGS_DIR=/cyclo_manager_ros_bags
- PYTHONUNBUFFERED=1
- HOST_HOSTNAME=${HOSTNAME}
# Note: uvicorn --reload will automatically restart on code changes
ui:
container_name: cyclo_manager_ui
build:
context: ./cyclo_manager_ui
dockerfile: Dockerfile.dev
restart: unless-stopped
network_mode: host
volumes:
# Mount source code for hot-reload in development
- ./cyclo_manager_ui:/app
# Exclude node_modules from host to use container's node_modules
- /app/node_modules
- /app/.next
# Exclude public/assets from host to use meshes downloaded during build
- /app/public/assets
environment:
- NEXT_PUBLIC_API_URL=http://127.0.0.1:8081
- NODE_ENV=development
- WATCHPACK_POLLING=true
# Note: Next.js dev server will automatically reload on code changes
novnc-server:
container_name: novnc-server
image: robotis/novnc-server:latest
# build:
# context: novnc
# dockerfile: docker/Dockerfile.amd64
restart: unless-stopped
cap_add:
- SYS_NICE
ulimits:
rtprio: 99
rttime: -1
memlock: 8428281856
network_mode: host
environment:
- DISPLAY=:99
- DISPLAY_WIDTH=1920
- DISPLAY_HEIGHT=1080
- WEBSOCKIFY_PORT=8090
volumes:
- /dev:/dev
- /dev/shm:/dev/shm
privileged: true