Aqara W100 Zigbee Matter Thread Temperatur- und Feuchtigkeitssensor

argh nicht cool :frowning:
Um all diese Unannehmlichkeiten zu vermeiden, verwende ich docker compose und portainer.
Docker compose ermöglicht es mir, alles einzurichten, was ich möchte, und die Versionen festzulegen, und portainer ermöglicht es mir, all das mit einer schönen grafischen Oberfläche zu verwalten (mit Zugriff auf die Logs, CPU/RAM/Disk-Statistiken usw.).
Du erstellst einmal das Verzeichnis für portainer:

docker volume create portainer_data

Und der docker run, den du startest, ist:

docker run -d -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce

anschließend kannst du dich auf http://meineMaschinenIP:9000 verbinden
Ich habe einen Stack namens gladys-assistant erstellt, in dem ich das docker compose hinterlegt habe:

version: "3"

services:
  gladys:
    image: gladysassistant/gladys:v4
    container_name: gladys
    restart: always
    privileged: true
    network_mode: host
    cgroup: host
    logging:
      driver: "json-file"
      options:
        max-size: 10m
    environment:
      NODE_ENV: production
      SQLITE_FILE_PATH: /var/lib/gladysassistant/gladys-production.db
      SERVER_PORT: 80
      TZ: Europe/Paris
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /var/lib/gladysassistant:/var/lib/gladysassistant
      - /dev:/dev
      - /run/udev:/run/udev:ro

  watchtower:
    image: containrrr/watchtower
    restart: always
    container_name: watchtower
    command: --cleanup --include-restarting
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

et dazu kannst du deinen Matterbridge, deinen z2m hinzufügen, deinen MQTT-Broker, dein zwavejs-ui, node-red usw., wenn du sie natürlich anstelle von Gladys verwalten möchtest.

  matterbridge:
    container_name: matterbridge
    image: luligu/matterbridge:latest # Matterbridge image with the latest tag
    network_mode: host # Ensures the Matter mdns works
    restart: always # Ensures the container always restarts automatically
    volumes:
      - "${HOME}/Matterbridge:/root/Matterbridge" # Mounts the Matterbridge plugin directory
      - "${HOME}/.matterbridge:/root/.matterbridge" # Mounts the Matterbridge storage directory

  zigbee2mqtt:
    image: koenkk/zigbee2mqtt:2.2.1
#    image: koenkk/zigbee2mqtt:1.42.0
    container_name: zigbee2mqtt
    restart: unless-stopped
    environment:
      - PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
      - NODE_ENV=production
      - TZ=Europe/Berlin
    volumes:
      - ./data:/app/data:rw
      - /run/udev:/run/udev:ro
    ports:
      - 12000:12000
    network_mode: host
    devices:
        # Make sure this matched your adapter location
        - /dev/serial/by-id/usb-Txxxxxxxyyyyyyyy:/dev/ttyACM0
# run a rootless container with Docker Compose by adding the following attributes
    # group_add:
    #     - dialout
    # user: 1000:1000

Das sind Beispiele, die man an seine Konfiguration anpassen muss, insbesondere bei der Erstellung dieser Verzeichnisse.

Jedenfalls ist das, was ich mache, und es funktioniert bei mir recht gut, ich kann mit den verschiedenen Versionen „spielen“, immer mit Backup davor!
Mit dieser Methode kann ich mir auch einen Gladys-Test erstellen, zum Beispiel:

version: '3'

services:
  gladys:
#    image: cicoub13/gladys:tuya-rain
    image: gladysassistant/gladys:matter-integration
#    image: sescandell/gladys-test:zjs-battery
#    image: sescandell/gladys-test:pr-zwaveJsMeter
#    image: gladysassistant/gladys:zigbee2mqtt-tuya-me201wz
#    image: gladysassistant/gladys:dashboad-add-other-aggregate-functions
    container_name: gladys-test
    restart: always
    privileged: true
    network_mode: host
    logging:
      driver: "json-file"
      options:
        max-size: 10m
    environment:
      NODE_ENV: production
      SQLITE_FILE_PATH: /var/lib/gladysassistant/gladys-production.db
      SERVER_PORT: 8001
      TZ: Europe/Paris
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./gladysassistant-test:/var/lib/gladysassistant
      - /dev:/dev
      - /run/udev:/run/udev:ro

  mosquitto:
    image: eclipse-mosquitto:2.0.20
    container_name: gladys-test-mqtt
    restart: unless-stopped
#    command: mosquitto -c /mosquitto-no-auth.conf
    environment:
      - PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
      - VERSION=2.0.20
      - DOWNLOAD_SHA256=azszderzbenrac6
      - GPG_KEYS=azszderzbenr
      - LWS_VERSION=4.2.1
      - LWS_SHA256=azszderzbenr
    volumes:
      - ./mqtt-test/config:/mosquitto/config:rw
      - ./mqtt-test/data:/mosquitto/data:rw
      - ./mqtt-test/log:/mosquitto/log:rw
    ports:
      - 1888:1888
    network_mode: host

  matterbridge:
    image: luligu/matterbridge:latest
    container_name: gladys-test-matterbridge
    restart: always
    network_mode: host
    volumes:
      - ./matterbridge-test/Matterbridge:/root/Matterbridge
      - ./matterbridge-test/.matterbridge:/root/.matterbridge

Für deinen Fall denke ich, dass es gut wäre, z2m darüber zu verwalten.
Du musst jedoch die Verwaltung von z2m durch Gladys deaktivieren, dann erstellst du deinen portainer, startest einen Stack (mit z2m mit 2.3.0 für die Version z. B.) und startest ihn. Du kehrst dann zu Gladys zurück und fügst deinen externen Docker z2m hinzu:


Ich hoffe, du findest alle deine kleinen Dinge wieder.