Я создал два тома Docker:
docker volume create volume1
docker volume create volume2
затем я создал контейнер Docker с помощью команды:
docker create -it ... some options ... -v volume1:/var/vcap/store -v volume2:/var/vcap/store2 --privileged myimage /bin/bash
Контейнер Docker имеет правильно настроенный ssh, поэтому, когда я в нем ssh, я правильно вижу том, смонтированный в /var/vcap/store. В частности, я вижу это:
/dev/sda1 on /var/vcap/store type ext4 (rw,relatime,data=ordered)
/dev/sda1 on /var/vcap/store2 type ext4 (rw,relatime,data=ordered)
Кроме того, я вижу и другие файловые системы на устройстве /dev/sda1:
/dev/sda1 on /etc/resolv.conf type ext4 (rw,relatime,data=ordered)
/dev/sda1 on /etc/hostname type ext4 (rw,relatime,data=ordered)
/dev/sda1 on /etc/hosts type ext4 (rw,relatime,data=ordered)
это меня сильно смущает, потому что мне непонятно, как можно смонтировать одно и то же устройство в разных папках и иметь разные файловые системы. На самом деле я убедился, что если я создам файл в /var/vcap/store на виртуальной машине Linux, на которой размещен контейнер на Mac, я увижу в папке:
/var/lib/docker/volumes/volume1/_data
созданный файл. Если я создам его в /var/vcap/store2 на виртуальной машине Linux, я увижу, что он создан в
/var/lib/docker/volumes/volume2/_data
Все идет нормально. Моя проблема в том, что я создал контейнер как привилегированный, потому что хочу монтировать и размонтировать эти файловые системы. Размонтировать работает нормально, но если я попытаюсь смонтировать том снова, я не знаю, какое устройство использовать. Если я использую команду:
mount /dev/sda1 /var/vcap/store
Я вижу в этой папке следующее содержимое:
cni containerd docker kubeadm kubelet-plugins log lost+found nfs swap
что я не знаю, откуда это.
Вопросы:
- Когда я монтирую том в Docker, как он отображается на устройстве /dev/sda1?
- Как возможно одно и то же устройство для разных файловых систем?
- Предположим, я использую Docker в привилегированном режиме, какую команду монтирования следует использовать для повторного монтирования ранее размонтированных файловых систем?