NEWS
linuxserver.io docker image
-
Hallo, ich bin kürzlich auf iobroker gestoßen und habe das aktuelle docker image von buanet gefunden, dieses ist wohl mehr auf die Verwendung aus einem NAS / dedizierter hardware optimiert.
Ich habe jedenfalls beim Einrichten ein paar Probleme gehabt es in meine bestehende docker compose Umgebung zu integrieren.
Ich verwende momentan in meinem docker-compose setup den reverse proxy traefik, hier arbeite ich mit verschiedenen subdomains, z.B. iobroker.domain.tld der reverse proxy verwaltet das ssl Zertifikat und sendet die Anfragen an den richtigen docker container und Port.
das sieht dann zum Beispiel so aus:
iobroker: restart: always build: ./iobroker container_name: iobroker hostname: iobroker environment: - SETUID=${PUID} - SETGID=${PGID} - TZ=${TZ} #- IOB_ADMINPORT=8081 - PACKAGES=vim ports: - "1880:1880" #node-red - "1883:1883" #mqtt - "2001:2001" #homematic - "8081:8081" #iobroker admin - "8282:8282" #flot - "8088:8088" #terminal - "8284:8284" #socketIO privileged: true stdin_open: true tty: true devices: - "/dev:/dev" networks: - discovery volumes: - iobrokerdata:/opt/iobroker depends_on: - traefik labels: - "traefik.enable=true" - "traefik.docker.network=discovery" - "traefik.http.services.iobroker.loadbalancer.server.port=8081" ### Middleware configuration - "traefik.http.routers.iobroker-secure.middlewares=oo-header@docker,iobroker-auth@docker" ### Basic configuration - "traefik.http.routers.iobroker-secure.entrypoints=websecure" #- "traefik.http.routers.iobroker.entrypoints=web" - "traefik.http.routers.iobroker-secure.rule=Host(`iobroker.${DOMAINNAME}`)" - "traefik.http.routers.iobroker-secure.tls.certresolver=mytlschallenge" ### TLS configuration - "traefik.http.middlewares.oo-header.headers.referrerPolicy=no-referrer" - "traefik.http.middlewares.oo-header.headers.stsSeconds=31536000" - "traefik.http.middlewares.oo-header.headers.forceSTSHeader=true" - "traefik.http.middlewares.oo-header.headers.stsPreload=true" - "traefik.http.middlewares.oo-header.headers.stsIncludeSubdomains=true" - "traefik.http.middlewares.oo-header.headers.browserXssFilter=true" - "traefik.http.middlewares.oo-header.headers.customRequestHeaders.X-Forwarded-Proto=https" ### Basic authentication - "traefik.http.middlewares.iobroker-auth.basicauth.users=${HTTP_USERNAME}:${HTTP_PASSWORD}"
Ich verwende in diesem Fall als SETUID / SETGID 1002 anfangs wollte er nie starten, ich habe dann das Dockerfile direkt angepasst:
# Setting up iobroker-user (shell and home directory) RUN chsh -s /bin/bash iobroker \ && usermod --home /opt/iobroker iobroker \ && usermod -u 1002 iobroker \ && groupmod -g 1002 iobroker # Setting up ENVs ENV DEBIAN_FRONTEND="teletype" \ LANG="de_DE.UTF-8" \ LANGUAGE="de_DE:de" \ LC_ALL="de_DE.UTF-8" \ SETGID=1002 \ SETUID=1002 \ TZ="Europe/Zurich"
Mit der Version hat es dann mit dem setzen der Rechte geklappt und der iobroker startet und das admin interface ist dann über https://iobroker.domain.tld erreichbar.
Es wird mit aber auf der Hauptseite der Link nach https://iobroker.domain.tld:8081 angezeigt, der Aufruf funktioniert dann nicht.
Das gleiche Problem habe ich wenn ich dann node-red zum beispiel hinzufüge.
Gibt es eine Option die urls subdomain und nicht port basiert zu definieren?
Ggf. wäre es interessant für das docker image das Format von linuxserver.io zu verwenden, dies ist recht weit verbeitet und standardisiert.
-
Ich persönlich habe meinen Iobroker in einem Dietpi Debian Image als VM auf meiner Diskstation am laufen. Ist auch noch Resourcenschonend und wie ich meine wesentlich flexibler als jedes Docker Image.
Da läuft dann noch Weewx drauf, Node Red, influxdb, etc., etc. RAM in Use 2,5GB im Schnitt. Image Backup im laufenden Betrieb.
Warum Docker?
-
Ich habe halt schon einen Server im homelab mit plex, nextcloud etc. laufen, wenn ich alles darauf laufen lassen kann ist es mir lieber als einen extra pi mit SD Karte zu haben, im Dauerbetrieb wurde bei mir bis jetzt nach einiger Zeit immer die SD Karte löchrig, d.h. es gibt im Dauerbetrieb schnell fehlerhafte Sektoren und alles wird instabil.
Ich lasse lieber alles auf Server Hardware laufen. Außerdem warte ich lieber ein System als +1.
Auch sind docker images genial einfach zu pflegen, du hast deine config und Daten separat, die Software Installation kannst du jederzeit plattmachen, umziehen anpassen etc. du machst nur ein Backup der volumes und kannst es einfachst wiederherstellen.
Auch ist die Gefahr dein Basissytem zu zerschießen minimal, füg ein docker image hinzu und lösch es ohne Rückstände im Basisystem. Das kann bare metal schnell zum Desaster werden.
-
-
@nbodo said in linuxserver.io docker image:
mein
Hi @nbodo , dein docker-compose.yml ist aber nirgendwo verlinkt auf deiner Seite, oder?
Wäre echt schon die ganzen Scripte zu sehen, die Befehle kenn ich schon
grüße