Docker in PyCharm - Posso leggere i file sul mio computer host?


1

Sono su Windows, usando la finestra mobile in PyCharm per risolvere i problemi di dipendenza nel mio progetto. Dato che sono nuovo nella finestra mobile, non sono sicuro se riuscirò a leggere i file che sono sul mio PC.

Per esempio, print(__file__) risultati in /opt/project/version-1.py e non sono sicuro di dove si trova. I file che vorrei leggere risiedono in C:\datasets\kitti\train\

Questo è ciò che ho digitato per eseguire l'immagine della finestra mobile

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

Ho cercato di cercare la cartella / root / condivisa ma non riesco a trovarla. C'è solo la radice :( Questo è così stressante

enter image description here

Risposte:


2

Puoi montare una o più directory locali nel tuo contenitore Docker. In questo modo puoi dare a PyCharm l'accesso ai tuoi file sorgente.

Questo è semplice su Linux usando il -v <host-directory>:<container-path> opzione.

Su Windows è un po 'più complicato. Vedi questo tutorial: windows-montaggio-host-directory finestra mobile-on-

Il nocciolo di ciò è che devi prima condividere un disco nelle impostazioni di Docker e quindi puoi montarlo come su Linux. Ad esempio, se hai un'unità condivisa D:, puoi montare la directory D:\data su di esso in questo modo:

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

Questo avvierà il alpine contenitore ed eseguire il ls comando per mostrare il contenuto della directory condivisa.


Ciao ho seguito il tuo consiglio ma non riesco ancora a trovare la cartella condivisa. Ho modificato la mia domanda sopra per includere il mio ultimo passo.
Kong

Hai seguito le istruzioni nel link che ho aggiunto? La cosa principale è che devi condividere il tuo C: guidare con Docker prima che i container docker possano accedervi. Non ho una scatola di Windows, solo macchine Linux, quindi non posso provarla da sola.
NZD
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.