Как Docker-контейнер может получить полный доступ к общему ресурсу Windows, не подключая его в ОС хоста? - PullRequest
0 голосов
/ 08 февраля 2019

Я использую Docker в Linux и хочу, чтобы мои контейнеры имели полный доступ к общей папке Windows (с именем myshare с соответствующим набором разрешений), которая имеет следующую структуру:

d:\myshare
       foo
       bar

Кактест, я проверил, что добавление следующего в /etc/fstab создаст монтирование, которое позволит мне RW к общей папке Windows.

//172.16.68.6/myshare  /home/me/foo  cifs username=myuser,password=mypass,domain=172.16.68.6,uid=1000

Вместо использования /etc/fstab я хотел бы иметь возможностьсоздать том в Docker, чтобы я мог сделать что-то вроде следующего в моем docker-compose.yml

volumes:
  - /myshare/foo:/foo

В идеале я хотел бы иметь возможность создать один том, а затем просто добавить имя каталога(как я делал выше с foo), поэтому мне не нужно создавать несколько томов.Но до сих пор я не могу даже создать монтирование на хосте докера, который подключается к общей папке Windows.Я даже не знаю, как «заглянуть» внутрь тома.Я пытался использовать portainer, но он говорит мне, что том не используется.

Как мне создать этот том и использовать его (желательно в docker-compose)?

1 Ответ

0 голосов
/ 09 февраля 2019

Я думаю, что ответ заключается в том, чтобы использовать подключаемый модуль громкости Docker. https://docs.docker.com/engine/extend/plugins_volume/

Предпочтительно, он уже существует.Найти его и следовать его инструкциям.Вы должны быть в состоянии сделать это.Проверьте https://docs.docker.com/engine/extend/legacy_plugins/ для возможных кандидатов.

В качестве альтернативы вы можете написать свой собственный плагин громкости докер.Обязательно опубликуйте его в интересах других.Это потребует значительных навыков, поэтому это может быть непрактично.

...