Установка локальных томов в удаленный док-контейнер, возможно?

В последнее время мне довольно удобно использовать Docker, обычно для тестирования веб-сайтов, чтобы убедиться, что они правильно работают на серверах, прежде чем развертывать их.

Обычно я монтирую свой локальный каталог в локально работающий образ, например:

docker run -v c:\temp\website:/var/www/html (you get the picture)

Мне интересно, есть ли способ подключить мой локальный том к удаленному серверу, на котором работает докер. Я почти уверен, что ответ отрицательный, если только я не прощу целые брандмауэры и тому подобное, чтобы сделать общий доступ к локальному тому извне.

Но я думал спросить. Docker, похоже, быстро делает удивительные вещи.

Спасибо


person user3888307    schedule 12.12.2016    source источник
comment
Из того, что я прочитал, тома докеров должны существовать на хосте, они не могут быть из удаленного источника. Я хотел сделать противоположное тому, что ты хочешь сделать. Локальный контейнер с удаленным томом.   -  person Benjamin Slabbert    schedule 28.09.2017
comment
Я поискал драйверы томов и нашел это: См.: flocker. Что не поможет в вашей ситуации, но даст возможность использовать удаленные тома   -  person Benjamin Slabbert    schedule 28.09.2017


Ответы (1)


  1. Сначала отправьте свой локальный каталог в Windows. Предположим, что ваша общая папка \\windowsip\website.
  2. Затем войдите на удаленную машину с Linux, на которой работает механизм докеров, и убедитесь, что вы можете смонтировать общую папку Windows: sudo apt install cifs-utils
  3. Попробуйте подключиться к вашему общему ресурсу: sudo mount -t cifs -o user=******,password=******,uid=ubuntu,gid=ubuntu //windowsip/website /home/ubuntu/website
  4. Когда все заработает, давайте проделаем то же самое с докером. Создайте именованный том следующим образом: docker volume create --driver local --opt type=cifs --opt device='//windowsip/website' --opt o='username=*****,password=*****' website
  5. docker run -v website:/var/www/html

Я знаю, что это старая тема, но у меня была такая же проблема, надеюсь, это поможет другим.

Окей Окей Я не читал последнюю часть вопроса. Да, нужно протыкать дыры в брандмауэре. Но все же полезно, у меня есть Linux-сервер с докером, и я использую его через VPN, когда работаю дома на своем ноутбуке. Контейнер имеет локальный доступ ко всему.

С Уважением

person Carlos Rafael Ramirez    schedule 05.04.2018
comment
Нам не нужен VPN здесь - как насчет переадресации локального порта cifs (445) с подключением ssh? - person Michał Karpacki; 17.12.2019