home assistant auf docker

homeassistant

QNAP

Container Station

Neue Application (= ein oder mehrere Docker-Container).

yaml (docker-container.yml):


version: '3'

services:
  # 1. Home Assistant Kern
  homeassistant:
    container_name: homeassistant
    image: ghcr.io/home-assistant/home-assistant:latest
    restart: unless-stopped
    network_mode: host
    environment:
      - TZ=Europe/Berlin
    volumes:
      # BIND MOUNT: Host-Pfad -> Container-Pfad (/config ist der Standard in HA)
      - /share/kuskus/homeassistant/config:/config

  # 2. MQTT Broker (Mosquitto)
  mosquitto:
    container_name: mosquitto
    image: eclipse-mosquitto:2.0
    restart: unless-stopped
    network_mode: host
    environment:
      - TZ=Europe/Berlin
    volumes:
      # BIND MOUNTS für Mosquitto
      - /share/kuskus/homeassistant/mosquitto/config:/mosquitto/config
      - /share/kuskus/homeassistant/mosquitto/data:/mosquitto/data
      - /share/kuskus/homeassistant/mosquitto/log:/mosquitto/log

  # 3. Zigbee2MQTT
  zigbee2mqtt:
    container_name: zigbee2mqtt
    image: koenkk/zigbee2mqtt:latest
    restart: unless-stopped
    network_mode: host
    environment:
      - TZ=Europe/Berlin
    volumes:
      # BIND MOUNT für z2m-Daten
      - /share/kuskus/homeassistant/z2m:/app/data
      # udev für USB-Erkennung (optional, aber hilfreich)
      - /run/udev:/run/udev:ro
    #devices:
      # Geben Sie hier den korrekten Pfad zu Ihrem Zigbee-Stick an
      #- /dev/ttyUSB0:/dev/ttyUSB0
    privileged: true

# KEINE volumes-Deklaration auf oberster Ebene mehr nötig,
# weil wir ausschließlich Bind Mounts verwenden.

Verzeichnisse anlegen: (echte Pade auf Server haben ein /share davor)

/kuskus/homeassistant/z2m/configurstion.yaml

mqtt:
  base_topic: zigbee2mqtt
  server: mqtt://192.168.123.3
serial:
  port: tcp://192.168.123.112:6638
  baudrate: 115200
  adapter: ezsp
disable_led: false
advanced:
  transmit_power: 20
  log_level: info
  channel: 11
  enable_external_js: false
frontend:
  enabled: true
  port: 8082
homeassistant:
  enabled: true
onboarding: false
version: 5

/kuskus/homeassistant/mosquitto/config/mosquitto.conf (sollte sich selbst anlegen)

listener 1883
allow_anonymous true
persistence true
persistence_location /mosquitto/data/
log_dest stdout