services: gui-tools: env_file: - .env build: context: ./guiTools/ environment: # Display settings DISPLAY: "${DISPLAY}" WAYLAND_DISPLAY: "${WAYLAND_DISPLAY}" # Uncomment below if using X11 # QT_QPA_PLATFORM: "${QT_QPA_PLATFORM:-xcb}" XDG_RUNTIME_DIR: "${XDG_RUNTIME_DIR}" ROS_MASTER_URI: "http://ros-master:11311" RMW_IMPLEMENTATION: rmw_cyclonedds_cpp SDK_ROOT: ${PWD} volumes: # X11 socket - /tmp/.X11-unix:/tmp/.X11-unix - ${XAUTHORITY:-~/.Xauthority}:/root/.Xauthority # Wayland socket #- ${XDG_RUNTIME_DIR}/wayland-0:${XDG_RUNTIME_DIR}/wayland-0 # Access to GPU devices - /dev/dri:/dev/dri # Code and configuration - ./guiTools/spiri_sdk_guitools/:/app/spiri_sdk_guitools/ - ./robots:/robots - /var/run/docker.sock:/var/run/docker.sock devices: # Provide access to GPU devices (supports non-NVIDIA GPUs) - /dev/dri:/dev/dri network_mode: host ports: - 8923:8923 ipc: host privileged: true # Required for GPU access # deploy: # resources: # reservations: # devices: # - driver: cdi # Optional for advanced resource scheduling # device_ids: # - "all" # Use "all" for all available GPUs