MoinMoin Logo
  • Kommentare
  • Geschützte Seite
  • Menu
    • Navigation
    • AktuelleÄnderungen
    • SeiteFinden
    • ÜbersichtsKarte
    • Help
    • HilfeInhalt
    • HilfeZurMoinWikiSyntax
    • Anzeige
    • Dateianhänge
    • Info
    • Rohform
    • Druckansicht
    • Cache löschen
    • Editieren
    • Laden
    • Speichern
  • Anmelden

Navigation

  • AktuelleÄnderungen
  • SeiteFinden
  • HilfeInhalt

Seiteninhalt hochladen

Sie können für die unten genannte Seite Inhalt hochladen. Wenn Sie den Seitennamen ändern, können Sie auch Inhalt für eine andere Seite hochladen. Wenn der Seitenname leer ist, leiten wir den Seitennamen vom Dateinamen ab.

Datei, aus der der Seiteninhalt geladen wird
Seitenname
Kommentar

  • Eigenen Debian-Container mit fhem erzeugen

Eigenen Debian-Container mit fhem erzeugen

1. Den Container als Daemon laufen lassen

docker run -d --network fhem-netzwerk --restart unless-stopped --name fhem2 --tmpfs /tmp --tmpfs /run --tmpfs /run/lock -v /sys/fs/cgroup:/sys/fs/cgroup:ro jrei/systemd-debian:bullseye

2. Konsole im Container ausführen

docker exec -it fhem2 /bin/bash

3. Container für fhem vorbereiten (natürlich im Konsolenfenster!)

apt-get update && apt-get -y dist-upgrade && apt-get -y install -f init procps cron mc wget vim bash-completion perl-base libdevice-serialport-perl libwww-perl libio-socket-ssl-perl libcgi-pm-perl libjson-perl sqlite3 libdbd-sqlite3-perl libtext-diff-perl libtimedate-perl libmail-imapclient-perl libgd-graph-perl libtext-csv-perl libxml-simple-perl liblist-moreutils-perl fonts-liberation libimage-librsvg-perl libgd-text-perl libsocket6-perl libio-socket-inet6-perl libmime-base64-perl libimage-info-perl libusb-1.0-0-dev libnet-server-perl libdate-manip-perl libhtml-treebuilder-xpath-perl libmojolicious-perl libxml-bare-perl libauthen-oath-perl libconvert-base32-perl libmodule-pluggable-perl libnet-bonjour-perl libcrypt-urandom-perl nodejs npm libnet-dbus-perl sudo zip unzip tar avrdude libdbd-mysql-perl iputils-ping net-tools libxml-parser-perl libxml-xpath-perl usbutils curl telnet jq locales

timedatectl set-timezone Europe/Berlin

sed -i -e 's/# de_DE.UTF-8 UTF-8/de_DE.UTF-8 UTF-8/' /etc/locale.gen
dpkg-reconfigure -f noninteractive locales
update-locale LANG=de_DE.UTF-8

mkdir -p ~/_download
cd ~/_download

wget http://fhem.de/fhem-6.1.deb

apt-get -y install -f ./fhem-6.1.deb

cp /opt/fhem/contrib/init-scripts/fhem.service /etc/systemd/system/
systemctl daemon-reload

systemctl stop fhem 
rm -rf /opt/fhem/
mkdir -p /opt/fhem
chown fhem:dialout /opt/fhem

useradd --home-dir /home/hss --groups dialout --create-home --shell /bin/bash --user-group hss

su hss

cd
mkdir ~/scripts
cd scripts
wget https://raw.githubusercontent.com/fhem/fhem-docker/dev/src/health-check.sh
chmod 755 health-check.sh

4. Aus dem nun entstandenen Docker Container ein eigenes Image ("bullseye_fhem") machen:

docker container stop fhem2

docker commit $(docker ps  -a | grep fhem2 | cut -d' ' -f1) bullseye_fhem
docker save bullseye_fhem > /home/hss/bullseye_fhem.tar

5. Das neu entstandene Image in Betrieb nehmen:

# Falls das Image aus einem Backup eingespielt werden soll:
# docker load --input bullseye_fhem.tar

docker run -d --network fhem-netzwerk --tmpfs /tmp --tmpfs /run --tmpfs /run/lock -v /sys/fs/cgroup:/sys/fs/cgroup:ro --name fhem -e FHEM_UID=$(id -u hss) -e FHEM_GID=$(id -g hss) -p 7072:7072 -p 8083:8083 -p 8084:8084 -p 8085:8085 -p 8088:8088 -p 8383:8383 -v /fhem-config:/opt/fhem --device=/dev/ttyUSB0 --device=/dev/ttyUSB1 --device=/dev/ttyUSB2 --device=/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A106YICN-if00-port0 --device=/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AH06NIQN-if00-port0 --device=/dev/serial/by-id/usb-Silicon_Labs_CP2104_USB_to_UART_Bridge_Controller_01304F5B-if00-port0 --restart unless-stopped --health-cmd /home/hss/scripts/health-check.sh --health-interval 30s --health-retries 3 --health-timeout 10s bullseye_fhem

6. Rechte anpassen

docker exec -it fhem /bin/bash
systemctl stop fhem
chown -R fhem:dialout /opt/fhem
systemctl start fhem
systemctl enable fhem

timedatectl set-timezone Europe/Berlin

5. signal-cli installieren (eigener Docker Container)

docker pull bbernhard/signal-cli-rest-api
docker run -d  --network fhem-netzwerk --restart unless-stopped --name signal-cli -v /signal-cli-config:/home/.local/share/signal-cli -p 8080:8080 -e MODE=json-rpc bbernhard/signal-cli-rest-api:latest


KategorieRaspberry

  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01