Einfaches HomeAssistant docker-compose-Setup
Zuerst ein Verzeichnis erstellen, in dem HomeAssistant liegen soll. Ich verwende /opt/homeassistant.
docker-compose.yml erstellen:
services:
homeassistant:
container_name: homeassistant
restart: unless-stopped
image: ghcr.io/home-assistant/home-assistant:stable
network_mode: host
privileged: true
environment:
- TZ=Europe/Berlin
volumes:
- ./homeassistant_config:/config
depends_on:
- mosquittoNun HomeAssistant starten, damit es die Standard-Konfigurationsdateien erstellt:
docker-compose upSobald
homeassistant | [services.d] done.erscheint, Strg+C drücken zum Abbrechen.
Nun die Mosquitto-MQTT-Server-Konfigurationsdatei in mosquitto_conf/mosquitto.conf erstellen:
persistence true
persistence_location /mosquitto/data/
log_dest file /mosquitto/log/mosquitto.log
listener 1883
## Authentifizierung ##
allow_anonymous false
password_file /mosquitto/config/mosquitto.passwdNun die Mosquitto-Passwortdatei erstellen und Berechtigungen korrigieren mit
touch mosquitto_conf/mosquitto.passwd
chown -R 1883:1883 mosquitto_confNun können wir den homeassistant-Mosquitto-Benutzer erstellen mit
docker-compose run mosquitto mosquitto_passwd -c /mosquitto/config/mosquitto.passwd homeassistantEin zufälliges Passwort eingeben, das für den homeassistant-Benutzer verwendet wird.
Nun können wir die HomeAssistant-Konfiguration homeassistant_config/configuration.yml bearbeiten. Dies ist meine Konfiguration – sicherstellen, dass das zufällige MQTT-Passwort von vorhin anstelle von ep2ooy8di3avohn1Ahm6eegheiResh eingefügt wird:
# Standard-Setup von Home Assistant konfigurieren (Frontend, API etc.)
default_config:
http:
use_x_forwarded_for: true
trusted_proxies:
- 127.0.0.1
ip_ban_enabled: true
login_attempts_threshold: 5
mqtt:
broker: "127.0.0.1"
username: "homeassistant"
password: "ep2ooy8di3avohn1Ahm6eegheiResh"
# Text-to-Speech
tts:
- platform: google_translate
group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yamlNun können wir den Server starten mit
docker-compose upMan kann auch unser Skript verwenden, um einen systemd-Service zu generieren, der die docker-compose-Konfiguration beim Booten automatisch startet:
curl -fsSL https://techoverflow.net/scripts/create-docker-compose-service.sh | sudo bash /dev/stdinNun am Web-Interface auf Port 8123 anmelden und HomeAssistant konfigurieren!