Um easyHAB mit openHAB zu verwenden, das in einem Docker-Container läuft (anstatt auf einem separaten Raspberry PI oder Mac mini), ist die folgende Einrichtung des openHAB-Containers erforderlich.

Dieses Beispiel basiert auf Docker auf einer Synology DSM.

1. Container im Synology Docker Manager erstellen

  • Image „openhab/openhab (latest)“ suchen und herunterladen
  • Starten eines neuen Containers mit diesem Image mit “Erweiterten Einstellungen”:
    • Synology-Ordner den Container-Ordnern zuordnen
      Screenshot 2022-02-05 at 12.20.36.png
    • Ordnen Sie die benötigten Container Ports den festen lokalen Ports zu (insbesondere SSH (22) und HTTP (8080) Ports).
      Wichtig: Der externe SSH-Port (922 im Beispiel unten) wird in der easyHAB-Konfiguration benötigt, um den openHAB-Server/Container zu kontaktieren.


  • Starten Sie den Container (in diesem Beispiel mit dem Namen „openhab“) zum ersten Mal, um die Basis-Umgebung zu erstellen
  • Speichern Sie das folgende Skript „openhab-precheck.sh“ im gemappten Ordner /openhab/config
#!/bin/bash -x

## Log start time
date >> $HOME/laststart.log

## Check if SSH is already installed
isInstalled=`dpkg -l openssh-server | grep "<none>" | wc -l`
if [ $isInstalled -ne 0 ]
then
    ## install OpenSSH first
    sudo apt update
    sudo apt install --yes openssh-server
fi

## Set OpenHAB Password
sudo bash -c 'echo "openhab:habopen" | chpasswd openhab'

## Start sshd
sudo /etc/init.d/ssh start

true
## EOF

2. PreCheck Script im Container installieren

  • Standard Passwort „habopen“ für Benutzer openhab im Precheck-Skript ändern/anpassen
  • Root Console Anmeldung im Container (Container name = “openhab”): 
    docker exec -ti openhab /bin/bash 
  • Führen Sie in der Container Console nacheinander alle folgenden Befehle aus:
    mkdir /etc/cont-init.d/
    cp /openhab/conf/openhab-precheck.sh /etc/cont-init.d/
    chmod 770 /etc/cont-init.d/openhab-precheck.sh
    apt update
    apt install --yes sudo
    echo "openhab ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
  • Starten Sie den Docker Container neu.
    Beim Restart wird der SSH Daemon installiert und das openhab User Passwort gesetzt
  • Weiter mit easyHAB App zur Verbindung mit dem openHAB Server im Docker Container.
    Dafür benötigte Daten:
    – die Server IP Adresse (hier: Synology IP)
    – der extern gemappte SSH Port (hier: 922)
    – Username openhab
    – Passwort wie im „openhab-precheck.sh“ Skript gesetzt