-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdocker-compose.yaml
More file actions
46 lines (46 loc) · 1.58 KB
/
docker-compose.yaml
File metadata and controls
46 lines (46 loc) · 1.58 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
services:
app:
container_name: ${CONTAINER_NAME:-ros2-docker-template}
image: ${CONTAINER_NAME:-ros2-docker-template}:humble
# platform: linux/arm64 # Uncomment for ARM64 (e.g., Raspberry Pi)
# platform: linux/amd64 # Uncomment for x86_64
build:
context: .
dockerfile: docker/Dockerfile
args:
BASE_IMAGE: osrf/ros:humble-desktop-full # x86_64 only
# BASE_IMAGE: dustynv/ros:humble-ros-base-l4t-r36.3.0 # NVIDIA Jetson (ARM64)
# BASE_IMAGE: ros:humble # Multi-architecture (ARM64/x86_64)
ROS_DISTRO: humble
USERNAME: ${USERNAME:-macs}
UID: ${UID:-1000}
GID: ${UID:-1000}
VIDEO_GID: 44
DIALOUT_GID: 20
stdin_open: true
tty: true
network_mode: host
ipc: host
privileged: true
environment:
- DISPLAY=${DISPLAY}
- QT_X11_NO_MITSHM=1
- XAUTHORITY=/tmp/.docker.xauth
- XDG_RUNTIME_DIR=/tmp/runtime-${USERNAME:-macs}
- ROS_DOMAIN_ID=${ROS_DOMAIN_ID:-0}
- CYCLONEDDS_URI=${CYCLONEDDS_URI:-file:///config/cyclonedds.xml}
volumes:
- /tmp/.X11-unix:/tmp/.X11-unix:rw
- /tmp/.docker.xauth:/tmp/.docker.xauth:rw
- ./docker/entrypoint.sh:/entrypoint.sh:ro
- ./src:/workspaces/shared_ws/src:rw
- ./data:/data:rw
- ./config:/config:rw
# REMOVE /dev/dri - that's for Intel
- /dev:/dev
- /tmp/runtime-${USERNAME:-macs}:/tmp/runtime-${USERNAME:-macs}:rw
device_cgroup_rules:
- 'c *:* rmw'
working_dir: /workspaces/shared_ws
user: ${UID:-1000}:${UID:-1000}
command: [ "/bin/bash" ]