Docker: Local Port und Container Port tauschen - kein fester Port für Web

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

mading

Benutzer
Registriert
31. Aug. 2018
Beiträge
11
Reaktionspunkte
0
Punkte
1
Hi,

auf meiner Synolog DS218+ habe ich erfolgreich ein Docker Image mit Splunk installiert. Splunk (eine Web Applikation) läuft im Standard über Port 8000 als Web Server. Nun ist es leider so, dass das Image nicht über diesen Port erreichbar ist, sondern über einen wechselnden Port. Im angehängten Screenshot Beispiel war es der Port 32772. Letztendlich sind die Ports eigentlich nur vertauscht: Local Port und Container Port müssten anders herum sein.

Hat jemand einen Tipp? Wenn ich SSH auf meiner Synology (aktuellstes DSM) aktiviere, komme ich nicht auf /opt (/Splunk). Es wird noch nicht mal angezeigt, obwohl ich mich mit dem erstellten Admin User, mit dem ich auch die Synology über Web administriere, einlogge.


splunk.jpg

Bin über Tipps dankbar

Grüße
mading
 
Hier scheint ein wenig Grundlagenwissen von Docker zu fehlen.

Docker Container sind quasi abgeschottete virtuelle Umgebungen, in denen ein eigenes Betriebssystem auf der Synology ausgeführt wird. Deshalb kann man das /opt auch nicht im Verzeichnisbaum der Synology finden, sondern z.B. über den Tab Terminal eine Bash aufmachen und darin betrachten. Andere Möglichkeit ist sich mit docker exec (siehe Docker Doku) auf der Synology Kommandozeile als root! am Container anzumelden.

Die Ports vom Container werden auf die Ports der Synology gemapped. Den Port auf der Synology kann man unter Bearbeiten->Porteinstellungen für den (ausgeschalteten) Container einstellen. Wenn 8000 auf der Synology noch frei ist kann man das Mapping also gerne Lokaler Port 8000, ContainerPort 800 einstellen. Der lokale Port auf der Synology ist dann auch statisch.
 
Hi Tommi2day,

du hast vollkommen Recht, ich habe mich bis vor 3 Tagen nicht mit Docker beschäftigt. Danke für deine Antwort! Ich bin nicht auf die Idee gekommen, den Container aus zu schalten und dann zu schauen, ob ich weitere Einstellungen ändern kann. Komme ich auf File Ebene irgendwie an die Splunk Verzeichnisse? Bei Splunk reicht es aus, den etc Ordner zu sichern für ein Backup.

Danke!
 
Docker ist ein Anwendungsvirtualisierung, das Betriebssystem / Linux-Kernel wird gemeinsam benutzt.
https://de.wikipedia.org/wiki/Docker_(Software)

Du kannst (im ausgeschalteten Container) in den Einstellungen Mappings von Ordner innerhalb des Containers auf Ordner auf der Synology erstellen. Findet sich im Reiter/Tab "Volume".
Auch hier (wie bei den Ports) ist links "Datei"Ordner" der Ort im Dateisystem des Hosts, also deiner Syno, und der "Mount-Pfad" der Ort innerhalb des Containers.
 
Wenn man die Volumes für den gewünschten Pfad im Container nicht nutzen kann oder möchte kann man vom Host aus Files mit dem laufenden Container mit dem "docker cp" Kommando austauschen.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat