version: '2' volumes: steamuser: # stores games display: xserver: # shares xorg server socket provided by Xwayland run: services: config: build: ./config restart: on-failure privileged: true seatd: build: ./seatd restart: always privileged: true labels: io.balena.features.dbus: '1' # systemctl environment: DBUS_SYSTEM_BUS_ADDRESS: unix:path=/host/run/dbus/system_bus_socket volumes: - run:/run pulse: build: ./pulse restart: always ipc: host devices: - /dev/snd group_add: - audio volumes: - run:/run environment: XDG_RUNTIME_DIR: /run/user/1000 display: build: ./display restart: always devices: - /dev/dri volumes: - run:/run - xserver:/tmp/.X11-unix environment: XDG_RUNTIME_DIR: /run/user/1000 depends_on: - seatd steam: build: ./steam restart: always ipc: host devices: - /dev/dri group_add: - video # CEF requires > 64M shared memory shm_size: 256M volumes: - steamuser:/home/steamuser/ - xserver:/tmp/.X11-unix - run:/run environment: DISPLAY: :0 XDG_RUNTIME_DIR: /run/user/1000 WAYLAND_DISPLAY: wayland-1 network_mode: host depends_on: - config - display - pulse