Hi Yves,
ich habe deinen string benutzt bis auf --net=host und natürlich mit meinen IPs.
Wenn ich das richtig verstehe wird mit --net=host der Docker das Netz des Hosts (bei mir die Synology) benutzen.
Da aber Synology mit dem vSwitch ein eigenes Netzt für den Docker zu verfügung stellt habe ich drauf verzichtet. Edomi war ja auch vom PC aus auch zu erreichen auf ihrer IP Adresse.
Viele Grüße
Waldemar
Ankündigung
Einklappen
Keine Ankündigung bisher.
Edomi im Docker-Container - revised
Einklappen
X
-
Hi Waldemar,
zunächst stellt sich die Frage, wie genau Du den Container gestartet hast, also mit welchen Parametern.
Einen Kommentar schreiben:
-
Hallo zusamen,
Ich bin noch neu bei dem Docker Thema und Linux auch.
Hab jetzt viel gelesen hier wegen Edomi als Docker auf der Synology und hab trotzdem noch eine frage:
Was genau heist startet nicht auf der Synology?
Bei mir läuft alles bis ich die Erste Visu anlege und als live Projekt aktiviere danach start er und sagt:
und beendet jedesmal den Container.Code:[TABLE="border: 0, cellpadding: 0, cellspacing: 0"] [TR] [TD][2K25.10.2017 23:00:35 Prozess KNX starten[/TD] [/TR] [/TABLE] [TABLE="border: 0, cellpadding: 0, cellspacing: 0"] [TR] [TD][2K25.10.2017 23:00:35 Prozess LOGIC starten[/TD] [/TR] [/TABLE] [TABLE="border: 0, cellpadding: 0, cellspacing: 0"] [TR] [TD][2K25.10.2017 23:00:35 Prozess VISU starten[/TD] [/TR] [/TABLE] [TABLE="border: 0, cellpadding: 0, cellspacing: 0"] [TR] [TD][2K25.10.2017 23:00:45 ACHTUNG: Mindestens 1 Prozess ist nicht bereit![/TD] [/TR] [/TABLE] [TABLE="border: 0, cellpadding: 0, cellspacing: 0"] [TR] [TD][2K25.10.2017 23:00:45 Prozess MAIN beenden... (Modus 13)[/TD] [/TR] [/TABLE] [TABLE="border: 0, cellpadding: 0, cellspacing: 0"] [TR] [TD][2K25.10.2017 23:00:45 EDOMI: Beenden... [TABLE="border: 0, cellpadding: 0, cellspacing: 0"] [TR] [TD] [/TD] [/TR] [/TABLE] [/TD] [/TR] [/TABLE] ....
Ist das der Fehler mit dem Websocket oder habe ich noch was anderes als Problem?
Dein Docker File hat an sich so funktioniert und sogar das update auf 1.53 hat geklappt
der Container läuft bei mir aber im eigenem Virtuellem Netz auf der Synology über dieses netzt komme ich auch an die Admin oberfläche (routing auf der Fritzbox angelegt)
Danke und Gruß
Waldemar
Einen Kommentar schreiben:
-
Hallo miteinander,
kobza:OK, danke für die Info. Aber das was Du gemacht hast, ist völlig irrelevant in diesem Kontext. Hier die Details dazu:
Zitat von kobza Beitrag anzeigenGenau das habe ich bei meinem lokalem Docker gemacht, HTTP auf 81 HTTPS auf 444, funktioniert zusammen mit meiner haupt-Aapache Installation ohne Probleme.Das ist soweit ja ok. Aber schlussendlich hast Du den Container nur so geändert, als dass Edomi nicht auf den Default-Ports läuft.Zitat von kobza Beitrag anzeigenIch habe das Dockerfile vom pfischi als Startpunkt genommen (weil ich schon länger damit Optionen probiert habe)
Dort habe ich die neuste EDOMI Version und eben die Ports 81/444 reingebastelt (Dockerfile und install.sh angepasst)
...Zitat von kobza Beitrag anzeigenJa, habe jetzt auf EDOMI 1.53 upgadated. Host system ist debian stretch 9.1.
Und genau hier findet sich der springende Punkt! Du startest den Container mit der Option --net=host und damit werden alle Ports direkt an den Container gebunden. Somit hast Du mit Port-Mapping überhaupt nichts mehr am Hut. Aber genau das ist die Frage, um die es den Synology-Usern geht, da sich der Container auf diese Art und Weise nicht so einfach auf einem Syno-System starten lässt.Zitat von kobza Beitrag anzeigendocker run ... --net=host ...
Anyway, ich bin nach wie vor am suchen, warum es nicht funktioniert, die Edomi-Visu selbst mit Reverse-Proxy im Container zu erreichen, wenn man das wie üblich mit Mapping der verwendeten Ports macht. Muss mich da wohl nochmal direkt mit gaert in Verbindung setzen, da ich mittlerweile irgendeine Spezialität der PHP-Implementierung vermute. Anders kann ich es mir im Moment jedenfalls nicht erklären...
Einen Kommentar schreiben:
-
Ja, habe jetzt auf EDOMI 1.53 upgadated. Host system ist debian stretch 9.1. (leif aber auch mit "jessie")
Wie gesagt als Startpunkt das"pfischi" GIT genommen und die Änderungen wie oben lokal eingebaut.
Docker build im lokalem Docker Dir:
Dann start mitCode:docker build -t "edomi" .
Code:docker run --restart=always --name edomi -d --net=host -e KNXGATEWAY=192.168.178.xx -e KNXACTIVE=true -e HOSTIP=192.168.178.xx edomi
Zuletzt geändert von kobza; 17.10.2017, 20:04.
Einen Kommentar schreiben:
-
Sehr seltsam! Und das funktioniert mit Edomi 1.52 aufwärts? Auf welchem Hostsystem? So ziemlich genau so hatte ich es am Anfang auch aber keine Chance die Websocket-Verbindung aufzubauen.
Hast Du bitte noch ein paar mehr Details zum "Drumherum" und den genauen Aufruf?
Einen Kommentar schreiben:
-
Klar :-) hier
Dockerfile , hier https und mysql (im extra File) Ports geändert:
install.sh (hier nur Apache config), http port auf 81Code:FROM centos:6.8 RUN yum update -y && yum upgrade -y RUN yum -y install \ nano \ emacs \ wget \ unzip \ php-devel \ mysql \ mysql-server \ vsftpd \ httpd \ tar \ php-gd \ php-mysql \ php-pear \ php-soap \ ntp \ openssh-server \ mod_ssl ENV EDOMI_TMP_PATH /tmp ENV EDOMI_ZIP $EDOMI_TMP_PATH/edomi.zip ENV EDOMI_INSTALL_PATH $EDOMI_TMP_PATH/edomi/Install/ COPY bin/edomi_152.zip $EDOMI_ZIP RUN unzip -q $EDOMI_ZIP -d $EDOMI_TMP_PATH COPY bin/install.sh $EDOMI_INSTALL_PATH RUN cd $EDOMI_INSTALL_PATH && ./install.sh # change http port to 81 -> done in install.sh # COPY config/httpd.conf /etc/httpd/conf/ # change mysql port to 3360 COPY config/my.cnf /etc/ # set root passwd RUN echo -e "admin\nadmin" | (passwd --stdin root) # enable ssl for edomi RUN sed -i -e "\$aLoadModule log_config_module modules/mod_log_config.so" /etc/httpd/conf.d/ssl.conf RUN sed -i -e "\$aLoadModule setenvif_module modules/mod_setenvif.so" /etc/httpd/conf.d/ssl.conf # change port to 444 RUN sed -i -e "s#443#444#g" /etc/httpd/conf.d/ssl.conf # copy entrypoint script ENV START_SCRIPT /root/start.sh COPY bin/start.sh $START_SCRIPT RUN chmod +x $START_SCRIPT CMD ["/root/start.sh"]
GrußCode:... # Apache cp config/welcome.conf /etc/httpd/conf.d/ cp config/httpd.conf /etc/httpd/conf/ sed -i -e "s#===INSTALL-HTTP-ROOT===#$MAIN_PATH/www#g" /etc/httpd/conf/httpd.conf # change port to 81 sed -i -e "s#80#81#g" /etc/httpd/conf/httpd.conf ...
Thomas
Einen Kommentar schreiben:
-
Ich habe das Dockerfile vom pfischi als Startpunkt genommen (weil ich schon länger damit Optionen probiert habe)
Dort habe ich die neuste EDOMI Version und eben die Ports 81/444 reingebastelt (Dockerfile und install.sh angepasst)
Gruß
Thomas
Einen Kommentar schreiben:
-
@kobza: hast du eine Syno?
welche sonstigen Porst hast du noch verbogen?
ich habe zwar auch in dieser Richtung herumgetestet - aber erfolglos :-(
Einen Kommentar schreiben:
-
Genau das habe ich bei meinem lokalem Docker gemacht, HTTP auf 81 HTTPS auf 444, funktioniert zusammen mit meiner haupt-Aapache Installation ohne Probleme.
Grüße
Thomas
Einen Kommentar schreiben:
-
Wäre es vielleicht möglich, die benutzen Ports (HTTP, etc) zu als Enviroment Variable dynamisch zu gestalten? Sollte doch eine recht simple Sache sein, die httpd.conf beim Starten dynamisch zu konfigurieren. Würde auch die Problematik mit der Diskstation vermeiden.
Einen Kommentar schreiben:
-
So als erstes mal: docker erzeugt bedeutend weniger Overhead weil keine Hardware-Schicht dazwischen liegt...
- Likes 1
Einen Kommentar schreiben:
-
Wo liegen den eigentlich die Vorteile zu anderen Virtualisieungen (wie z.B. Proxmox)?
Einen Kommentar schreiben:


Einen Kommentar schreiben: