Docker в PyCharm - Могу ли я читать файлы на моем хост-компьютере?

656
Kong

Я нахожусь на Windows, используя докер в PyCharm для решения проблем с зависимостями в моем проекте. Так как я новичок в докере, я не уверен, смогу ли я по-прежнему читать файлы, которые находятся на моем ПК.

Например, print(__file__)приводит к /opt/project/version-1.pyи я не уверен, где это находится. Файлы, которые я хотел бы прочитать, находятся вC:\datasets\kitti\train\

Это то, что я набрал, чтобы запустить образ докера

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

Я пытался найти папку / root / shared, но я не могу ее найти. Есть только рут :( Это так напряженно

enter image description here

1

1 ответ на вопрос

2
NZD

Вы можете смонтировать один или несколько локальных каталогов внутри вашего контейнера Docker. Таким образом, вы можете предоставить PyCharm доступ к вашим исходным файлам.

Это просто в Linux, используя -v <host-directory>:<container-path>опцию.

В Windows все немного сложнее. Посмотрите этот урок: каталоги docker-on-windows-mount-host-directory

Суть в том, что вы должны сначала открыть общий доступ к диску в настройках Docker, а затем вы можете смонтировать его так же, как в Linux. Например, если у вас есть общий диск D:, вы можете смонтировать каталог D:\dataна нем следующим образом:

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

Это запустит alpineконтейнер и выполнит lsкоманду для отображения содержимого общего каталога.

Привет! Я последовал твоему совету, но все еще не могу найти общую папку. Я изменил мой вопрос выше, чтобы включить мой последний шаг. Kong 6 лет назад 0
Вы следовали инструкциям в ссылке, которую я добавил? Главное, чтобы вам приходилось делить диск C: с Docker, прежде чем ваши контейнеры Docker смогут получить к нему доступ. У меня нет Windows-бокса - только Linux-машины, поэтому я не могу попробовать это сам. NZD 6 лет назад 0