mirror of
https://github.com/legop3/MultiRoombaRover.git
synced 2026-09-15 17:12:59 -04:00
57 lines
1.4 KiB
YAML
57 lines
1.4 KiB
YAML
# MultiRover production deployment
|
|
name: multirover
|
|
|
|
# Change this one line to use a development branch image.
|
|
x-multirover-image: &multirover-image ghcr.io/legop3/multiroombarover:latest
|
|
|
|
services:
|
|
server:
|
|
image: *multirover-image
|
|
container_name: multirover
|
|
|
|
network_mode: host
|
|
restart: unless-stopped
|
|
stop_grace_period: 20s
|
|
|
|
security_opt:
|
|
- label=disable
|
|
|
|
volumes:
|
|
# All persistent application data is stored in this volume.
|
|
- data:/data
|
|
- lifecycle-socket:/run/multirover
|
|
# Required for Bluetooth hardware such as the Balance Board.
|
|
- /run/dbus/system_bus_socket:/run/dbus/system_bus_socket:ro
|
|
|
|
# Required for Kinect USB access.
|
|
devices:
|
|
- /dev/bus/usb:/dev/bus/usb
|
|
|
|
cap_add:
|
|
- NET_ADMIN
|
|
|
|
lifecycle:
|
|
image: *multirover-image
|
|
container_name: multirover-lifecycle
|
|
command: ["node", "src/services/serverControlService/controller.js"]
|
|
user: root
|
|
network_mode: none
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
disable: true
|
|
security_opt:
|
|
- label=disable
|
|
environment:
|
|
MULTIROVER_TARGET_IMAGE: *multirover-image
|
|
volumes:
|
|
- lifecycle-socket:/run/multirover
|
|
# Do not add this Docker socket mount to the server service.
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
volumes:
|
|
# `docker compose down -v` permanently deletes these volumes.
|
|
data:
|
|
name: multirover-data
|
|
lifecycle-socket:
|
|
name: multirover-lifecycle-socket
|