Home Catalog Zigbee2MQTT
Smart Home & IoT

Zigbee2MQTT

A lightweight bridge that connects Zigbee smart home devices directly to an MQTT broker, enabling local control via Home Assistant or custom automation software.

ARM64 & AMD64
Docker & Rootless Podman
100% Self-Hosted (Zero Lock-in)
RAM Profile: Medium
Default Port: Port 8080

Why this Configuration?

Quick Start (Standalone Docker Compose)

The snippet below is immediately ready to run in any standard Docker or Podman environment:

services:
  zigbee2mqtt:
    container_name: njorddeploy-zigbee2mqtt
    image: koenkk/zigbee2mqtt:latest
    restart: unless-stopped
    volumes:
      - "./data/zigbee2mqtt:/app/data"
      - /run/udev:/run/udev:ro
    ports:
      - "8080:8080"
    environment:
      - "PUID=1000"
      - "PGID=1000"
      - "TZ=Europe/Amsterdam"
      - "ZIGBEE2MQTT_CONFIG_MQTT_SERVER=mqtt://mosquitto:1883"
      - "ZIGBEE2MQTT_CONFIG_FRONTEND=true"
      - "ZIGBEE2MQTT_CONFIG_FRONTEND_PORT=8080"
      - "ZIGBEE2MQTT_CONFIG_FRONTEND_HOST=0.0.0.0"
      - "ZIGBEE2MQTT_CONFIG_SERIAL_PORT=/dev/ttyUSB0"
    devices:
      - "/dev/ttyUSB0:/dev/ttyUSB0"
    networks:
      - njorddeploy_net

networks:
  njorddeploy_net:

Start the service directly via the command line: docker compose up -d

Configuration & Environment Variables

Key configuration parameters and defaults derived from the NjordDeploy component template:

Variable Default Value Description
8080 The port to access the Zigbee2MQTT web interface.
/dev/ttyUSB0 Path to your Zigbee USB adapter (e.g. /dev/ttyUSB0).
True Set to 'true' to mount a physical USB adapter, or 'false' for network-based Zigbee coordinators (TCP).

Ecosystem & Enterprise Integration

Effortless Management with NjordDeploy

Deploy, monitor, and update this service with a single click on your own hardware via the NjordDeploy Configurator.