Контейнер тома данных Docker - могу ли я делиться роем
Я знаю, как создавать и монтировать контейнер тома данных в нескольких других контейнерах с использованием --volumes-from, но у меня есть несколько вопросов относительно его использования и ограничений:
Ситуация: Я ищу использовать контейнер объема данных для хранения загруженных пользователем изображений для моего веб-приложения. Этот контейнер объема данных будет использоваться/монтируется многими другими контейнерами, на которых запущен веб-интерфейс.
Вопросы:
-
Можно ли использовать/монтировать контейнеры объема данных в контейнерах, находящихся на других хостах в рое докеров?
-
Как работает производительность? рекомендуется ли это структурировать такие вещи?
-
Есть ли лучший способ справиться с совместным использованием постоянных ресурсов между контейнерами и хостами, такими как NFS?
Ответы
Ответ 1
Можно ли использовать/монтировать контейнеры объема данных в контейнерах, находящихся на других хостах в рое докеров?
Docker сам по себе не предоставляет возможности для переноса данных или обмена данными между хостами в кластере.
Как работает производительность? рекомендуется ли это структурировать вещи таким образом?
Объемы докеров в большинстве случаев налагают на себя незначительные накладные расходы, потому что они просто привязывают привязки.
Есть ли лучший способ обработки совместного использования постоянных ресурсов между контейнерами и хостами, такими как NFS?
NFS или любая файловая система кластера, например gluster, могут использоваться для создания томов данных, доступных всем хостам в кластере.
Ответ 2
Существует технология, называемая Flocker, которая поможет вам перемещать контейнеры через хосты с прикрепленным томом. Flocker является открытым исходным кодом. Docker сам по себе не предоставляет никаких функций для миграции контейнеров Docker. Существует небольшая статья о миграции контейнеров. Надеюсь, это будет полезно.