π‘ Zigbee2MQTT
Run Zigbee2MQTT as Docker container alongside HA.
Docker is the flexible way to run Home Assistant. Perfect if you already have a server or NAS running.
# Update package listsudo apt update && sudo apt upgrade -y
# Install Docker with official scriptcurl -fsSL https://get.docker.com | sh
# Add your user to docker groupsudo usermod -aG docker $USER
# Log out and in again (or run):newgrp docker
# Verify installationdocker --versiondocker compose version# Create foldersmkdir -p ~/docker/homeassistant/configcd ~/docker/homeassistantYour structure:
~/docker/βββ homeassistant/ βββ config/ β All HA files stored here βββ docker-compose.ymlCreate the file docker-compose.yml:
services: homeassistant: container_name: homeassistant image: ghcr.io/home-assistant/home-assistant:stable volumes: - ./config:/config - /etc/localtime:/etc/localtime:ro - /run/dbus:/run/dbus:ro restart: unless-stopped privileged: true network_mode: host environment: - TZ=Europe/London# Start in backgrounddocker compose up -d
# Follow logs (Ctrl+C to stop)docker compose logs -f homeassistantThen open: http://YOUR-SERVER-IP:8123
# See statusdocker compose ps
# See logsdocker compose logs -f homeassistant
# Restartdocker compose restart homeassistant
# Stopdocker compose down
# Update to latest versiondocker compose pulldocker compose up -d
# See resource usagedocker stats homeassistantIf you have a Zigbee USB stick or similar:
Find your device:
ls -la /dev/serial/by-id/Add to docker-compose.yml:
services: homeassistant: container_name: homeassistant image: ghcr.io/home-assistant/home-assistant:stable volumes: - ./config:/config - /etc/localtime:/etc/localtime:ro restart: unless-stopped network_mode: host devices: - /dev/ttyACM0:/dev/ttyACM0Restart container:
docker compose down && docker compose up -d| Feature | Docker Container | Home Assistant OS |
|---|---|---|
| Add-ons (Z2M, Node-RED) | β Run separately | β Integrated |
| Supervisor | β No | β Yes |
| Auto-backup | β Manual | β Yes |
| Updates | Manual (pull) | β One click |
| Flexibility | βββ | ββ |
Docker Container has no automatic backup. Do it manually:
# Stop HA first (optional, but safer)docker compose stop homeassistant
# Backup config foldertar -czvf homeassistant-backup-$(date +%Y%m%d).tar.gz config/
# Start HA againdocker compose start homeassistantπ‘ Zigbee2MQTT
Run Zigbee2MQTT as Docker container alongside HA.
β‘ First automation
Create your first automation in Home Assistant.