В настоящее время я пытаюсь познакомиться с докером, но при этом столкнулся с проблемой. Я пытаюсь разделить том между двумя контейнерами, но я не хочу, чтобы они помещали свои файлы в корень тома.
Вот как это должно выглядеть:
Контейнер1: Mysql должен хранить / var / lib / mysql / * -> Volume1 / mysql
Контейнер 2: Ngnix должен хранить / var / www / * -> Volume1 / www
Вот как это выглядит, если контейнеры созданы с помощью:
-v Volume1:/var/lib/mysql/
-v Volume1:/var/www/
Контейнер1: Mysql должен хранить / var / lib / mysql / * -> Volume1
Контейнер 2: Ngnix должен хранить / var / www / * -> Volume1
TL; DR: я не создаю том ради одного файла, но для того, чтобы это было возможно, я должен поддерживать порядок в томе с помощью каталогов.
Если я правильно понял, вы хотели что-то вроде этого:
docker run -it --name mysql -v volume/mysql:/mountpoint alpine ash
docker run -it --name nginx -v volume/nginx:/mountpoint alpine ash
Но это невозможно. Вы не можете смонтировать подкаталог тома.
Если вам нужен этот мелкозернистый элемент управления, вам лучше монтировать каталоги хоста с помощью -v
Кстати: в контейнере nginx нет необходимости иметь файлы mysql. В противном случае mysql не нуждается в файлах www. я предполагаю, что это были просто общие примеры
Вы можете просто установить их как -v /path/to/volume1/mysql:/var/lib/mysql
и -v /path/to/volume1/www:/var/www