NEWS
Test Docker Image Multiarch v0.7.x
-
Hallo zusammen,
da ich beruflich aktuell viel mit Docker zu tun habe, habe ich spaßeshalber einen Fork von Buanet erstellt. Nach einigem Ärger mit meiner besseren Hälfte da ich Abends soviel vor dem PC saß habe ich die Installation und das Startup Script stark erweitert und Builds für mehrere Architekturen erstellt (Die Ausgaben habe ich von Buanet übernommen da seine besser als meine waren):
- amd64
- armv7hf (i.e. RaspberryPi 2/3)
- aarch64
Die ioBroker Installation wurde über das offizielle Installationsscript auf Debian durchgeführt und ioBroker läuft unter dem User "iobroker"
Es ist nicht notwendig beim starten speziell eine der Architekturen auszuwählen. Es reicht eine der Version mit den tags "latest", "full" oder "min" zu starten, Docker wählt dann automatisch das aktuellste Image für die verwendete Architektur.
Bei mir läuft es zwar stabil aber aktuell bitte als Beta betrachten.
Auf Github:
https://github.com/duffbeer2000/docker-iobrokerDockerhub:
https://hub.docker.com/r/duffbeer2000/iobrokerUnterschiede der Tags:
duffbeer2000/iobroker:full
Die "full"-Version prüft welche Adapter installiert sind und installiert vor dem Start von ioBroker automatisch alle mir bekannten Abhängigkeiten. (Wenn welche fehlen einfah hier schreiben oder noch besser einen issue bei GitHub öffnen.)Unterstützte Variablen:
-e AVAHI=1 <-- Hiermit wird AVAHI installiert und gestartet (Yahka). Wenn der Yahka Adapter installiert ist passiert dies automatisch.
-e IOBROKER_ADMIN_PORT=8081 <-- Ändern des Adminports
-e BT_ENABLE=1 Aktivieren wenn man ein Bluetooth Adapter hat, hiermit werden die benötigten Pakete installiert.
-e ASTERISK=- 1 = ioBroker & asterisk im gleichen Container mit ffmpeg
2 = ioBroker & asterisk im gleichen Container mit sox
3 = ioBroker & asterisk in unterschiedlichen Containern oder Servern mit ffmpeg
4 = ioBroker & asteriskin unterschiedlichen Containern oder Servern mit sox
- Wenn der Ordner /opt/iobroker beim Start leer ist wird die "factory default" Installation wiederhergestellt.
- Wenn man von einer älteren Node Version (vor Version kommt kann man in den /opt/ioBroker Ordner eine Datei "UPGRADE" legen, somit wird automatisch beim nächsten Start ein "npm rebuild" im /opt/iobroker Ordner gestartet.
- Legt man in den Ordner eine Datei "pre_script.sh" wird diese beim nächsten Start automtisch ausführbar und wird vor dem nächsten Schritt mit sudo gestartet.
- Legt man in den Ordner eine Datei "custom_packages.list" wird beim nächsten Start automtisch geprüft ob die enthaltenen Pakete bereits installiert sind und wenn nicht werden sie installiert.
- Legt man in den Ordner eine Datei "post_script.sh" wird diese beim nächsten Start automtisch ausführbar und nach der Paketinstallation mit sudo gestartet.
- Wird erkannt das der "iobroker" User nicht die erforderlichen Rechte im Ordner "/opt/iobroker" besitzt werden diese korrigiert.
- ioBroker wird mit dem User "iobroker" gestartet.
duffbeer2000/iobroker:latest
Die "latest"-Version ist die Standard Version. Fehlende Berechtigungen werden automatisch korrigiert. Für Paketabhängigkeiten der verschiedenen Adapter muss man selbst Hand anlegen. Für die meisten User sollte es aber ausreichen.Unterstützte Variablen:
-e AVAHI=1 <-- Hiermit wird AVAHI installiert und gestartet (Yahka)
-e IOBROKER_ADMIN_PORT=8081 <-- Ändern des Adminports- Wenn der Ordner /opt/iobroker beim Start leer ist wird die "factory default" Installation wiederhergestellt.
- Wenn man von einer älteren Node Version (vor Version kommt kann man in den /opt/ioBroker Ordner eine Datei "UPGRADE" legen, somit wird automatisch beim nächsten Start ein "npm rebuild" im /opt/iobroker Ordner gestartet.
- Legt man in den Ordner eine Datei "pre_script.sh" wird diese beim nächsten Start automtisch ausführbar und wird vor dem nächsten Schritt mit sudo gestartet.
- Legt man in den Ordner eine Datei "custom_packages.list" wird beim nächsten Start automtisch geprüft ob die enthaltenen Pakete bereits installiert sind und wenn nicht werden sie installiert.
- Legt man in den Ordner eine Datei "post_script.sh" wird diese beim nächsten Start automtisch ausführbar und nach der Paketinstallation mit sudo gestartet.
- Wird erkannt das der "iobroker" User nicht die erforderlichen Rechte im Ordner "/opt/iobroker" besitzt werden diese korrigiert.
- ioBroker wird mit dem User "iobroker" gestartet.
duffbeer2000/iobroker:min
Die "min"-Version ist eine abgespeckte Version. Es wird nichts automatisch korrigiert und man ist für alles selbst zuständig.Unterstützte Variablen:
-e AVAHI=1 <-- Hiermit wird AVAHI installiert und gestartet (Yahka)
-e IOBROKER_ADMIN_PORT=8081 <-- Ändern des Adminports- Wenn der Ordner /opt/iobroker beim Start leer ist wird die "factory default" Installation wiederhergestellt.
- ioBroker wird mit dem User "iobroker" gestartet.
Ich hoffe ihr könnt damit was anfangen, wenn nicht dürft ihr gerne Fragen. Mangels Hardware wäre ich auch an Tests mit arm und aarch64 interessiert. Ein Raspberry ist schon auf dem Weg zu mir.
Gruß
Duff