[TUT] DockAMP Webserver via Docker einrichten

  • This image is exclusive to our members!
    Please log in or register for free to view graphics and attachments.


    Hallo zusammen

    Da es auf UGOS nicht wie bei Synology einen integrierten Webserver gibt, habe ich ein komplettes Webserver Verwaltungs-Tool erstellt, welches über Docker funktioniert.

    In der Weboberfläche von DockAMP könnt ihr euren Webserver einrichten, welcher dann entsprechend die benötigten Apache/Nginx/PHP/MySQL-Container startet, ohne alles manuell via Compose einzurichten.

    Starten könnt ihr den DockAMP Container, indem ihr bei Docker -> Projekt folgendes eintragt:

    This image is exclusive to our members!
    Please log in or register for free to view graphics and attachments.

    Alle Docker-Volumes können in der Weboberfläche dann später auch mit Unterordnern im Ordner "docker" verknüpft werden, um die Ordner entsprechend für ein Backup zu nutzen. Bitte beachtet, dass der Ordner der Website ebenfalls im Ordner "docker" oder einem Unterordner abgelegt werden muss, da UGOS keine anderen Speicherorte für Docker erlaubt, um diese als Host-Verzeichnisse als Mount zu nutzen.

    Mehr Details zum DockAMP-Projekt findet ihr hier:

    keepcoolch/dockamp - Docker Image

    Viel Spass beim Selfhosting eurer Website! 😄

    Screenshots der Weboberfläche:

    This image is exclusive to our members!
    Please log in or register for free to view graphics and attachments.

    This image is exclusive to our members!
    Please log in or register for free to view graphics and attachments.

    This image is exclusive to our members!
    Please log in or register for free to view graphics and attachments.

    This image is exclusive to our members!
    Please log in or register for free to view graphics and attachments.

    This image is exclusive to our members!
    Please log in or register for free to view graphics and attachments.

    This image is exclusive to our members!
    Please log in or register for free to view graphics and attachments.

    This image is exclusive to our members!
    Please log in or register for free to view graphics and attachments.

    DXP6800PRO mit 5x 8TB HDD RAID5 + 1x 1TB SSD und DXP2800 mit 2x 16TB HDD

  • Guten Morgen,

    danke erst einmal für das coole Projekt!

    Ich weiß nicht, ob der Fehler bei mir liegt, aber ich habe gerade eine Testinstanz auf einer iDX6011 Pro eingerichtet. Getestet habe ich jeweils ohne Datenbank und mit einer eigenen Placeholder-Seite.

    Wenn ich als Server NGINX auswähle, bekomme ich beim Start der Webseite in DockAMP jedes Mal folgenden Fehler:

    Code
    28a1d2c2b7e7a83fd2f8d1fdeb0deb482a10cde515957513c10a32ae0ba4f745 docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/sites/.dockamp-runtime/bc99cc74-0586-4aef-86b8-e580491388c6/nginx-main.conf" to rootfs at "/etc/nginx/nginx.conf": mount /sites/.dockamp-runtime/bc99cc74-0586-4aef-86b8-e580491388c6/nginx-main.conf:/etc/nginx/nginx.conf (via /proc/self/fd/6), flags: 0x5000: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type Run 'docker run --help' for more information

    Mit Apache als Server startet die Webseite grundsätzlich. Dort habe ich allerdings das Problem, dass die Index-Seite scheinbar statisch bleibt. Auch wenn ich den Site-Inhalt lösche oder ändere, wird weiterhin die alte Seite ausgeliefert.

    This image is exclusive to our members!
    Please log in or register for free to view graphics and attachments.

    Ähnlich wirkt es bei Portänderungen: Auch nach dem Ändern des Ports bleibt der alte Port weiterhin erreichbar, beziehungsweise es scheint sich nichts wirklich zu ändern.

    Den Container beziehungsweise die Webseite habe ich mehrfach neu gestartet. Dabei ist mir zusätzlich aufgefallen, dass der Button „Restart“ unten links offenbar ohne Funktion ist.

    This image is exclusive to our members!
    Please log in or register for free to view graphics and attachments.

    Vielleicht mache ich auch etwas falsch, aber aktuell wirkt es so, als würden Änderungen nicht sauber übernommen oder die Runtime-Konfiguration nicht korrekt neu erzeugt.

  • Hey Mike
    Gerne schaue ich mir das gegen Abend mal an, vielleicht liegt das in der Docker Version vom iDX, bei meinem DXP6800Pro funktioniert es. Vielleicht erkennt er die Ordnerstruktur mit dem vorangestellten Punkt im Ordner .dockamp-runtime als File anstelle als Ordner. Sonst ändere ich das Script dann so, dass er den Ordner ohne vorangestellten Punkt erstellt.
    Werde ich heute Abend gerne einmal ändern und auf Docker Hub neu bereitstellen. 😀
    Das mit dem Button scheint auch komisch, da er eigentlich normal das Restart-Kommando auslöst. Aber der Restart Button für den Container selbst oben funktioniert in der Webserver Ansicht?
    Die Feedbacks sind wichtig, um das ganze Bombensicher zu machen. hihi
    Gruss Kevin

    DXP6800PRO mit 5x 8TB HDD RAID5 + 1x 1TB SSD und DXP2800 mit 2x 16TB HDD

  • Hi Kevin,

    genau aus diesem Grund habe ich das ganze auch mitgeteilt. Ich habe es zwischenzeitlich noch auf einer Synology RS1221+ getestet, leider mit dem gleichen Ergebnis. Vielleicht habe ich aber auch einfach etwas falsch verstanden oder angelegt.

    Der Restart-Button unterhalb der Webserveransicht funktionierte.

    Verwendet habe ich folgenden Stack:

  • Achso, jetzt ist es klar. Du musst das Script ganz genau so starten, wie ich es in der compose geschrieben habe, sonst legt er die runtimes am falschen Ort ab. Wenn du für /data und /sites ein persistentes Volume haben willst, musst du entweder über den Button Storage/Datenspeicher erst die Verknüpfung machen mit den Ordnerpfaden oder sonst wie folgt zusätzlich mit environment:
    - DOCKAMP_SITES_HOST_PATH=/volume1/docker/dockamp/sites starten:

    Versuche das mal, dann sollte es klappen. 😀


    Habe noch einen Fehler gefunden, dass bei Apache die Config nicht richtig reingeschrieben wurde und im Container der falsche html Ordner verwendet wird. Ich fixe das kurz und lade das neue Image rauf auf Docker Hub.


    Die korrigierte Version ist nun online. 🫡

    DXP6800PRO mit 5x 8TB HDD RAID5 + 1x 1TB SSD und DXP2800 mit 2x 16TB HDD

    Edited 2 times, last by KeepCoolCH: Ein Beitrag von KeepCoolCH mit diesem Beitrag zusammengefügt. (June 29, 2026 at 1:24 PM).

  • Hey Mike, konntest du die neuste Version schon testen? Ging es? Ich habe den Fall noch in der Readme ergänzt, damit bei anderen dann beim Start mit Host-Mounts nicht der gleiche Fehler passiert. 😄 Falls du noch mehr siehst, kannst du mir es gerne berichten. Ich bin mir auch noch einige neue Features am überlegen, wie ein Backup-Button für ein Volume Backup, wenn kein Host-Mount verwendet wird, in dem man einstellen könnte, wohin und in welchem Intervall ein Backup gemacht werden soll. Vielleicht hast du ja auch noch einige Ideen für eine spätere Version. 😇 Danke dir.

    DXP6800PRO mit 5x 8TB HDD RAID5 + 1x 1TB SSD und DXP2800 mit 2x 16TB HDD

  • Leider kam ich noch nicht dazu.... :(

  • Die neue Version 1.1 ist nun online. Nun ist es auch möglich bei der ersten Admin-Einrichtung den Speicherort separat anzugeben, wenn man es in der Compose oder im Docker Run Befehl vergessen hat, einen Mount anzugeben. Nachträglich ist es im Webinterface überall möglich, manuelle Mounts zu hinterlegen. Auch gibt es jetzt unter Storage/Datenspeicher die Funktion, manuelle oder automatische Backups erstellen zu lassen sowie ein Backup wiederherzustellen. Ungenutzte Images oder Volumes können dort ebenfalls wieder entfernt werden, ohne dass man in die Docker App gehen muss um diese zu löschen.

    Viel Spass beim ausprobieren. 😄

    DXP6800PRO mit 5x 8TB HDD RAID5 + 1x 1TB SSD und DXP2800 mit 2x 16TB HDD

  • Guten Morgen,

    vielen Dank für die Info. Ich hatte kurz Zeit und habe es nochmals getestet, aber irgendwie scheint es da noch ein "Berechtigungsproblem" zu geben. Oder man muss meinem "alten Gehirn" auf die Sprünge helfen. :)

    Ich habe nun folgenden Stack bei mir mit Hostpfaden verwendet, alles neu angelegt:

    Ändere ich im Hostpfad dann unter Site /docker/dockamp/sites/test1/ Dateien - also tausche zb. die index.html durch meine aus, erhalte ich beim Aufruf ein "Forbidden". Auch ein Container neustart half nichts und der Webserver-Container meldet:

    Code
    2026/07/06 07:56:54 [error] 21#21: *1 open() "/var/www/html/index.html" failed (13: Permission denied), client: 192.168.11.8, server: _, request: "GET / HTTP/1.1", host: "192.168.10.50:8088", referrer: "http://192.168.10.50:8080/"
    2026/07/06 07:56:56 [error] 21#21: *1 open() "/var/www/html/index.html" failed (13: Permission denied), client: 192.168.11.8, server: _, request: "GET / HTTP/1.1", host: "192.168.10.50:8088"

    Wenn ich die Rechte zum Test mal auf 777 - chmod -R 777 /volume1/docker/dockamp/sites ändere und den Webserver-Container neu starte, dann funktioniert es.

  • Ah habe den Bug gefunden und korrigiert. Habe das Image gerade aktualisiert, da PHP im Worker Prozess den falschen internen Link verwendet hat. 😅 Jetzt sollte es gehen.

    DXP6800PRO mit 5x 8TB HDD RAID5 + 1x 1TB SSD und DXP2800 mit 2x 16TB HDD

  • Perfekt, nun scheint es sauber zu laufen.

    Herzlichen Dank!

  • Hallo,

    ich bin ein totaler Dockerneuling und wollte mal den "DockAMP Webserver" auf meinen DXP 4800+ ausprobieren.
    Docker ist installiert,
    Das Projekt dockamp läuft oder wie geschrieben ist "in Betrieb"

    Aber nun wie sehe ich etwas mit lokalhost:8080 ist nicht, Seite nicht erreichbar
    Was mache ich da falsch oder was fehlt noch?
    Wenn ich auf meinem Laptop wamp laufen habe und da localhost starte, dann funktioniert es.

    Danke für die Hilfe

    Jörg

    jetzt NAS DXP 4800+, 24GB RAM, vorher WD Elements Desktop-Speicher 14 TB

  • Ach Du Schreck, wie kann ich nur so .... sein, Du hast recht, der NAS hat ja eine IP Adresse und ist nicht wie wamp auf meinem Laptop

    Danke:thumbup:


    Ich habe jetzt die Oberfläche, habe einen neuen Server angelegt aber wie komme ich jetzt zu den Dateien,
    genau gesagt zu "/sites/testseite" wo ich meine Seite ablegen kann.
    Über SSH oder im NAS über Dateien oder wie finde ich dahin?

    Jörg

    jetzt NAS DXP 4800+, 24GB RAM, vorher WD Elements Desktop-Speicher 14 TB

    Edited once, last by Fritschie: Ein Beitrag von Fritschie mit diesem Beitrag zusammengefügt. (July 15, 2026 at 9:08 PM).

  • Am besten mountest du einfach einen Ordner im docker Ordner, dann kannst du die Dateien via Dateibrowser hinzufügen oder via SMB etc. /sites/test ist nur im Container selbst als Platzhalter drin. 😄 Du kannst den Ordner unter den Webserversettings auswählen. Sollte am Schluss /volume1/docker/test oder /volume2/docker/test oder so sein. 👍🏻

    DXP6800PRO mit 5x 8TB HDD RAID5 + 1x 1TB SSD und DXP2800 mit 2x 16TB HDD

    Edited once, last by KeepCoolCH (July 15, 2026 at 10:38 PM).

  • Danke, mit dem voreingestellten Pfad läuft der Server und ich sehe die Beispielseite "Dockamp läuft"

    Gebe ich aber einen eignen Pfad wie volume1/docker/test (gibt es wirklich bei mir)
    und darin die index.html dann bekomme ich ein 403 Forbidden.
    was ja heißt kein Zugriff, auch nach Neustart, Container und Server, keine Änderung
    Da muß ich noch schauen wo es klemmt

    Die Fehlermeldung die ich finden konnte,
    wieso "index.php" und ein ganz anderer Pfad?

    Code
    2026/07/18 18:21:19 [error] 30#30: *1 "/var/www/html/index.php" is forbidden (13: Permission denied), client: 192.168.178.26, server: _, request: "GET / HTTP/1.1", host: "192.168.178.21:8081", referrer: "http://192.168.178.21:8080/"

    jetzt NAS DXP 4800+, 24GB RAM, vorher WD Elements Desktop-Speicher 14 TB

  • Hallo Fritschie

    Hat dein docker und test Ordner sowie die index Datei die richtigen User/Admin Berechtigungen? Du kannst mir sonst ein paar Screenshots senden, dann kann ich mir das anschauen. Hast du die index.html rausgelöscht oder besteht diese neben deiner index.php noch? /var/www/html ist nur der Container interne Ordner, in welchen die Files gemounted werden.

    Gruss Kevin

    DXP6800PRO mit 5x 8TB HDD RAID5 + 1x 1TB SSD und DXP2800 mit 2x 16TB HDD

  • Hallo Kevin,

    Danke für Deine Hilfe.
    Also Docker habe ich ganz normal installiert.
    Bei "Freigegebene Ordner verwalten" hat bei Ordner Docker der Admin (ich) Schreib- und Leserechte, Haken an.
    Im Ordner Docker, gibt es den Ordner Test und darin liegt die index.html, keine index.php.
    Bei Berechtigung habe ich mal nur so wie zu sehen probiert und auch mit Haken bei mir, beides immer 403.
    Mit Edge und Firefox probiert.
    Wovon hättest Du den gern noch einen Screenshot, habe mal einen beigelegt?

    Jörg

    Wer ist "client: 192.168.178.26" ? NAS /Server läuft doch über 192.168.178.21

    Code
    2026/07/19 06:10:01 [error] 29#29: *1 "/var/www/html/index.php" is forbidden (13: Permission denied), client: 192.168.178.26, server: _, request: "GET / HTTP/1.1", host: "192.168.178.21:8081", referrer: "http://192.168.178.21:8080/"

Participate now!

Join our community with over 10,000 members!

Register yourself now for free to get full access to all content, graphics, downloads and other exclusive features!