Pihole, MariaDB, Nextcloud

  • Ahoi,


    Ich versuche per docker-compose nen Pihole, MariaDB und Nextcloud zum Laufen zu bringen. Die einzelnen Container sollen per statischer IP erreichbar sein.

    Das NAS hat die IP mit der 110, Pihole die 111, Nextcloud die 112 und MariaDB die 113. Die compose-Datei folgt:

    nach meinem Verständnis müsste alles funktionieren.

    Aber versuche ich die Einrichtung, nölt mich mein NAS an, dass der Pihole nicht starten kann wegen

    Code
    "listen tcp4 0.0.0.0:80: bind: address already in use".

    Was mach ich falsch? Der Pihole soll auf Port 80 auf seiner IP horchen. Die Nextcloud auf seiner IP ebenfalls auf Port 80. SSL soll hier erstmal nicht das Thema sein.


    Weiteres Problem die Container werden zwar angelegt, allerdings steht keine Url am Container. Wenn ich die IPs/Namen nicht wüsste, würde ich die Url zum Aufruf auch nicht finden. Evtl. ist dies auch ein Folgefehler von der Port-Problematik. Nicht verwunderlich kann ich die Nextcloud-Adresse auch nicht aufrufen.


    Und noch ein Problem... Ich hab einen virtuellen Switch an dem ursprünglich der Pihole als Container (ohne docker-compose) eingerichtet war. Dann versuchte ich MariaDB und Nextcloud per docker-compose einzurichten, was dazu führte, dass ein neuer virtueller Switch angelegt wurde. Ich hab angenommen, dass der bereits existierende verwendet wird. Wie kann ich das der docker-compose beibringen.


    Was mach ich falsch? Noch irgendwelche Hinweise/Tipps?

    Thx.

  • Das wird wahrscheinlich daran liegen, dass der Webserver des NAS auf dem Port bereits läuft.

  • Das kann ich bestätigen. Allerdings hab ich auch 8081:80 ausprobiert für den Pihole und hab die gleiche Fehlermeldung mit 8081 bekommen. Ausserdem hatte ich die Container auch schon ohne docker-compose einzeln am Laufen und hatte alles über Port 80 erreichbar. Also muss das doch irgendwie machbar sein.

  • Du hast für die nextcloud keinen Port angegeben im Compose File. Wenn mich nicht alles täuscht läuft die doch auch auf Port 80. Es kann immer nur eine Anwendung einen Port verwenden.

  • Also ich würde Pihole auch in einem seperaten Container mit einer eigenen IP laufen lassen. Würde ich nicht nur...mache ich auch so. Allein schon, weil du evtl. bei Nextcloud ja evtl. noch ein NGINX Proxy in Verbindung mit Letsencrypt evtl. einbringen willst. Das benötigt dann jedenfalls für sich die Ports 80 und 443 und würde sich beißen wahrscheinlich

  • Da habt ihr wahrscheinlich Recht. Ich hab das bisher so interpretiert, dass diese yml-Datei drei Container erzeugt und nicht eine Anwendung aus 3 Containern. Ich hatte bisher ein paar Schwierigkeiten, weil ständig ein neuer virtueller Switch angelegt wird und der neue nicht mit dem physischen Adapter sprechen wollte.

    Allerdings find ich dann Anwendungen aus mehreren Containern ziemlich fragwürdig, weil auch alles in einem laufen könnte und sich die Ports dann nicht behindern. Stattdessen sollte man die Konfiguration für Container vereinfachen... Speicherbar, dynamisch änderbar und und und *grummel*