furtka-apps/apps/home-assistant/docker-compose.yaml
Daniel Maksymilian Syrnicki 1c14446434
All checks were successful
CI / validate (push) Successful in 17s
CI / shellcheck (push) Successful in 50s
feat(home-assistant): add smart-home hub to the catalog (closes #1)
Bridge-mode networking with explicit 8123:8123 port mapping. Image is
homeassistant/home-assistant:stable — upstream's recommended production
tag, same image as the Docker Hub link in #1.

One Docker-managed volume (`furtka_home-assistant_config`). No
manifest.settings — onboarding (admin user, home location, units) is
the standard Home Assistant in-browser flow on first visit to :8123,
same shape as Jellyfin and Uptime Kuma.

Cloud integrations (Hue Cloud, Tado, Sonos via account) work today.
Local-discovery integrations that need host networking, Bluetooth, or
Zigbee/Z-Wave dongle passthrough are explicitly deferred — listed as
a follow-up once the manifest schema grows a network_mode knob.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-28 12:17:11 +02:00

38 lines
1.5 KiB
YAML

# Furtka Home Assistant — smart-home hub.
#
# Bridge networking + explicit `8123:8123` port mapping. Upstream's own
# docs lean toward `network_mode: host` because that's what mDNS-based
# discovery, Bluetooth, HomeKit, and Zigbee/Z-Wave dongles need. We're
# deliberately starting in bridge mode for v1: it keeps the catalog's
# network model consistent (every other app is bridged), and Cloud-only
# integrations (Hue Cloud, Tado, Sonos via account, etc.) work fine.
# Host networking + USB passthrough is a follow-up once the manifest
# schema grows a `network_mode` knob.
#
# Image pin: `homeassistant/home-assistant:stable` is upstream's
# recommended tag for production — release-train, not bleeding edge.
# Same image as the Docker Hub link Robert pointed at in the new-app
# request (#1).
#
# No HEALTHCHECK override needed: the upstream image's healthcheck is
# tame, and a temporarily-yellow status during the first-boot DB
# migrations is expected behaviour.
#
# No manifest.settings — Home Assistant's onboarding (admin user, home
# location, units) happens entirely in the browser on first visit, just
# like Jellyfin and Uptime Kuma. Nothing for the install form to ask.
services:
homeassistant:
image: homeassistant/home-assistant:stable
restart: unless-stopped
ports:
- "8123:8123"
environment:
- TZ=Europe/Berlin
volumes:
- furtka_home-assistant_config:/config
volumes:
furtka_home-assistant_config:
external: true