clone

a desktop tv and program guide for over-the-air broadcasts: what's on air, what your tuner gets, live tv, recordings

main
airwaves / deploy / standalone / compose.yml
compose.yml 2.7K
1# Airwaves without an antenna: the custom channels only (Jellyfin, YouTube,2# folders of videos and the weather), for the Airwaves app and, if you like,3# Jellyfin, Channels DVR and other HDHomeRun players. No tuner or antenna4# needed. Settings are in .env (copy .env.example); the steps are in5# docs/self-hosting.md.6# docker compose up -d --build7name: airwaves-standalone8services:9 airwavesd:10 build:11 context: ../..12 dockerfile: deploy/standalone/Dockerfile13 image: airwavesd:standalone14 restart: unless-stopped15 # An init process reaps Chromium's helper processes after the weather16 # channel stops rendering.17 init: true18 # Must be able to write to DATA and CHANNELS.19 user: ${PUID:-1000}:${PGID:-1000}20 ports:21 # The Airwaves app, the admin page (/admin/) and its MCP endpoint.22 - ${BIND:-0.0.0.0}:${PORT:-8089}:808923 # The emulated HDHomeRun, when AIRWAVES_HDHR=on.24 - ${BIND:-0.0.0.0}:${HDHR_PORT:-5004}:500425 environment:26 TZ: ${TZ:-UTC}27 AIRWAVES_ANTENNA: "off"28 AIRWAVES_NAME: ${AIRWAVES_NAME:-Airwaves}29 # Where the weather is for; nothing else needs a location.30 AIRWAVES_ZIP: ${AIRWAVES_ZIP:-}31 AIRWAVES_LAT: ${AIRWAVES_LAT:-}32 AIRWAVES_LON: ${AIRWAVES_LON:-}33 AIRWAVES_ADMIN_PASSWORD: ${AIRWAVES_ADMIN_PASSWORD:-}34 AIRWAVES_TOKEN: ${AIRWAVES_TOKEN:-}35 # The folders mounted below, as the admin page names them.36 AIRWAVES_HOST_CHANNELS: ${CHANNELS:-./channels}37 AIRWAVES_HOST_MUSIC: ${MUSIC:-./music}38 AIRWAVES_HDHR: ${AIRWAVES_HDHR:-off}39 AIRWAVES_HDHR_DISCOVERY: "off"40 # The weather display below: the app opens it on WEATHERSTAR_PORT,41 # airwavesd reaches it by its service name. While it isn't running42 # (COMPOSE_PROFILES without "weather"), there's no weather channel.43 AIRWAVES_WEATHERSTAR_PORT: ${WEATHERSTAR_PORT:-8090}44 AIRWAVES_WEATHERSTAR_URL: http://weatherstar:808045 volumes:46 # Settings, caches, the self-updating yt-dlp and backups.47 - ${DATA:-./data}:/data48 # A folder per channel; the admin page writes here too.49 - ${CHANNELS:-./channels}:/channels50 # MP3s for the weather channel's music (optional).51 - ${MUSIC:-./music}:/music:ro52 logging:53 options:54 max-size: 10m55 max-file: "3"5657 # Airwaves Weather: WeatherStar 4000+ (github.com/netbymatt/ws4kp, MIT)58 # with Airwaves branding, behind the weather channel. On with59 # COMPOSE_PROFILES=weather in .env.60 weatherstar:61 profiles: [weather]62 build: ../weatherstar63 image: airwaves-weatherstar:standalone64 restart: unless-stopped65 ports:66 - ${BIND:-0.0.0.0}:${WEATHERSTAR_PORT:-8090}:808067 logging:68 options:69 max-size: 10m70 max-file: "3"