Files
boWave/bordanlage/docker-compose.dev.yml
denshooter 946c0a5377 Initial implementation: Bordanlage boat onboard system
Complete multiroom audio + navigation dashboard:
- Docker stack: SignalK, Snapcast (4 zones), librespot, shairport-sync, Mopidy, Jellyfin, Portainer
- React 18 + Vite dashboard with nautical dark theme
- Full mock system (SignalK NMEA simulation, Snapcast zones, Mopidy player)
- Real API clients for all services with reconnect logic
- SVG instruments: Compass, WindRose, Gauge, DepthSounder, SpeedLog
- Pages: Overview, Navigation, Audio (zones/radio/library), Systems
- Dev mode runs fully without hardware (make dev)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 11:47:33 +01:00

59 lines
1.6 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
version: "3.9"
# Development override run without any hardware.
# Usage: docker compose -f docker-compose.yml -f docker-compose.dev.yml up -d
services:
signalk:
environment:
- SIGNALK_DEMO=true # Built-in demo NMEA data generator
# Spotify Connect still works over TCP on dev (no host network needed)
librespot:
environment:
- LIBRESPOT_DISABLE_DISCOVERY=false
ports:
- "57621:57621/udp"
- "57621:57621/tcp"
# avahi container for AirPlay mDNS discovery on Mac/Windows
avahi:
image: flungo/avahi
restart: unless-stopped
network_mode: host
volumes:
- /var/run/dbus:/var/run/dbus
# Null-player zones no audio hardware needed
zone-salon:
command: snapclient --host snapserver --hostID zone-salon --player null
zone-cockpit:
command: snapclient --host snapserver --hostID zone-cockpit --player null
zone-bug:
command: snapclient --host snapserver --hostID zone-bug --player null
zone-heck:
command: snapclient --host snapserver --hostID zone-heck --player null
# Vite dev server with HMR instead of built nginx image
dashboard:
build: .
image: node:20-alpine
working_dir: /app
volumes:
- ./dashboard:/app
- /app/node_modules
command: sh -c "npm install && npm run dev -- --host 0.0.0.0 --port 8080"
ports:
- "8080:8080"
environment:
- VITE_SNAPCAST_HOST=localhost
- VITE_SIGNALK_HOST=localhost
- VITE_MOPIDY_HOST=localhost
- VITE_JELLYFIN_HOST=localhost
# Override the build-based image
image: node:20-alpine