Datei aus Docker-Container auf das Host-System der DS kopieren

dstevens

Benutzer
Mitglied seit
20. Aug 2014
Beiträge
74
Punkte für Reaktionen
2
Punkte
8
Guten Tag zusammen,

o.g. Aufgabe mutete zunächst ganz leicht an. So langsam verzweifle ich aber.

Setup:
DS918+, DSM 7.1.-42962 Update 1

Im Docker-Container läuft IoBroker (buanet-iobroker), in IoBroker läuft eine Instanz von Node-Red. Mit einer Write-File-Node von Node-Red habe ich eine Datei TEST.txt erstellt. Diese Datei will ich auf die Syno kopieren.

Lösungsansatz 1: Kopieren über Terminal​

Im Docker-Terminal
find -name TEST.txt
ergibt:
/node_modules/iobroker.node-red/TEST.txt

der vollständige Pfad lautet also:
/opt/iobroker/node_modules/iobroker.node-red/TEST.txt

Nun SSH in die Syno als Admin.
Kommando ls liefert
Drive
Ich befinde mich also im Home-Verzeichnis des Admin. In diesen Ordner Drive möchte ich nun die Datei TEST.txt aus dem Docker-Container kopieren.

Kurzer Check auf welchen Namen der Container hört:
sudo docker ps
liefert
CONTAINER ID ab6e717f3401 und NAMES buanet-iobroker1

Also wieder im Terminal der Syno:
sudo docker cp ab6e717f3401:/opt/iobroker/node_modules/iobroker.node-red/TEXT.txt /Drive

Das Kommando wird ohne Fehlermeldung ausgeführt. Allerdings liegt dann dort keine Datei ab.
Habe die Quelldatei mittels
chmod 777 TEST.txt

bereits rechtemäßig so zurecht gebogen, dass sie nicht nur root gehört (zumindest bin ich der Meinung, dass ich das mit diesem Befehl getan habe, denn mit den Terminal-Kommandos bin ich wirklich nicht sonderlich fit).
Bringt alles nichts.

Lösungsansatz 2: Volume einbinden​

Hier im Forum habe ich einen Thread gefunden, in dem der folgende Weg beschrieben wird.

Docker-Container gestoppt. Dann diesen bearbeitet. Unter "Volume-Einstellungen" zwei Varianten getestet:
1.) Das Verzeichnis /opt/iobroker in den (gemeinsamen) Ordner docker/iobroker eingebunden. Folge: Der Ordner ist leer. Kopiere ich dann die Datei TEST.txt innerhalb des Docker-Containers aus seinem Quellverzeichnis nach /opt/iobroker, startet der Container nicht mehr. Fehlermeldung:
Please check/ recreate mounted folder or volume and start over.
There is data detected in /opt/iobroker but it looks like it is no instance of ioBroker or a valid backup file!

2.) Einbinden des kompletten Pfads zur TEST.txt
Der Container startet dann zwar, aber das Verzeichnis auf der Syno bleibt leer.

Ich weiß nicht, was ich sonst noch machen soll.

Wer kann mir helfen?
 

Der Paul

Benutzer
Mitglied seit
04. Feb 2014
Beiträge
131
Punkte für Reaktionen
26
Punkte
28
Lege Dir auf der Syno ein neues Verzeichnis an und mounte das zusätzlich in den Container und kopiere die Datei dorthin.
 

dstevens

Benutzer
Mitglied seit
20. Aug 2014
Beiträge
74
Punkte für Reaktionen
2
Punkte
8
wie spreche ich dieses Verzeichnis denn aus dem Container heraus an?
 
Zuletzt bearbeitet von einem Moderator:

plang.pl

Benutzer
Contributor
Sehr erfahren
Mitglied seit
28. Okt 2020
Beiträge
15.028
Punkte für Reaktionen
5.401
Punkte
564
Du mountest es zum Beispiel als /Test in den Container und änderst deinen Befehl dann ab:
sudo docker cp ab6e717f3401:/opt/iobroker/node_modules/iobroker.node-red/TEXT.txt /Test
 

dstevens

Benutzer
Mitglied seit
20. Aug 2014
Beiträge
74
Punkte für Reaktionen
2
Punkte
8
Sorry, wenn ich gerade etwas begriffstutzig bin ... aber ich habe jetzt auf der Syno ein Verzeichnis docker/temp.
Dieses Verzeichnis temp muss ich an den Docker binden. Soweit klar. Aber welches Verzeichnis aus dem Docker verbinde ich denn damit, wenn /opt/iobroker bereits verbunden ist und auch nicht funktioniert hat?
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Mitglied seit
28. Okt 2020
Beiträge
15.028
Punkte für Reaktionen
5.401
Punkte
564
Es ist egal, welches. Da du es ja nur für das manuelle Kopieren nutzt.
 

dstevens

Benutzer
Mitglied seit
20. Aug 2014
Beiträge
74
Punkte für Reaktionen
2
Punkte
8
Ich habe jetzt opt/iobroker/node_modules genommen. Jetzt startet der Container nicht mehr. So egal scheint es nicht zu sein.
 

dstevens

Benutzer
Mitglied seit
20. Aug 2014
Beiträge
74
Punkte für Reaktionen
2
Punkte
8
Es läuft!
Danke Euch!
 


 

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