Docker in PyCharm - Kann ich Dateien auf meinem Hostcomputer lesen?

756
Kong

Ich arbeite unter Windows und verwende Docking in PyCharm, um Abhängigkeitsprobleme in meinem Projekt zu lösen. Da ich neu bei Docker bin, bin ich nicht sicher, ob ich noch Dateien lesen kann, die sich auf meinem PC befinden.

Zum Beispiel print(__file__)führt /opt/project/version-1.pyund ich bin nicht sicher, wo sich das befindet. Die Dateien, die ich lesen möchte, befinden sich inC:\datasets\kitti\train\

Dies ist, was ich eingegeben habe, um das Docker-Image auszuführen

docker run -it -p 8888:8888 -p 6006:6006 -v C:/test:/root/shared floydhub/dl-docker:cpu bash 

Ich habe versucht, nach dem Ordner / root / shared zu suchen, aber ich kann ihn nicht finden. Es gibt nur root :( Das ist so anstrengend

Docker in PyCharm - Kann ich Dateien auf meinem Hostcomputer lesen?

1

1 Antwort auf die Frage

2
NZD

Sie können ein oder mehrere lokale Verzeichnisse in Ihrem Docker-Container einhängen. Auf diese Weise können Sie PyCharm Zugriff auf Ihre Quelldateien gewähren.

Dies ist unter Linux mit der -v <host-directory>:<container-path>Option unkompliziert .

Unter Windows ist es etwas komplizierter. Sehen Sie sich dieses Tutorial an: Docker-on-Windows-Mounting-Host-Verzeichnisse

Das Wichtigste dabei ist, dass Sie zunächst ein Laufwerk in den Einstellungen von Docker freigeben müssen und dann auf dieselbe Weise wie unter Linux mounten können. Wenn Sie beispielsweise ein freigegebenes Laufwerk haben D:, können Sie das Verzeichnis D:\datawie folgt bereitstellen :

D:\>docker run -v d:/data:/data alpine ls /data 

Dadurch wird der alpineContainer gestartet und der lsBefehl ausgeführt, um den Inhalt des freigegebenen Verzeichnisses anzuzeigen.

Hallo, ich habe Ihren Rat befolgt, kann aber den freigegebenen Ordner immer noch nicht finden. Ich habe meine Frage oben bearbeitet, um meinen letzten Schritt aufzunehmen. Kong vor 7 Jahren 0
Haben Sie die Anweisungen in dem von mir hinzugefügten Link befolgt? Die Hauptsache ist, dass Sie Ihr Laufwerk C: für Docker freigeben müssen, bevor Ihre Docker-Container darauf zugreifen können. Ich habe keine Windows-Box - nur Linux-Maschinen, daher kann ich es nicht selbst ausprobieren. NZD vor 7 Jahren 0