Докер

Тома Docker, монтирование и многое другое

Тома Docker, монтирование и многое другое
В Docker, когда вы создаете контейнер, есть указанное место, где будут храниться данные для контейнера. Если вы не укажете место для хранения этих данных, они будут храниться в контейнере. При удалении контейнера данные также будут потеряны. Однако при работе над корпоративными проектами, чтобы предотвратить потерю данных, вы можете удалить контейнер, но сохранить данные. Вы можете использовать эти данные для создания большего количества контейнеров и обмена данными между этими контейнерами. Здесь в игру вступает объем Docker.

Особенности Docker Volumes

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

Требования

Базовый синтаксис Docker Volume

Вы можете использовать команду «docker volume», чтобы увидеть все доступные параметры с объемом:

объем докера

После ввода указанной выше команды вы должны увидеть следующий вывод:

Использование: docker volume COMMAND
Управляйте объемами
Команды:
создать Создать том
inspect Показать подробную информацию об одном или нескольких томах
ls Список томов
prune Удалить все неиспользуемые локальные тома
rm Удалить один или несколько томов
Запустите docker volume COMMAND --help, чтобы получить дополнительную информацию о команде.

Создать том

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

Вы можете создать том Docker с помощью команды «docker volume create».Например, используйте следующую команду для создания нового тома Docker с именем myvolume:

том докера создать myvolume

Вы должны увидеть следующий результат:

мой объем

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

объем докера ls

Вы должны увидеть следующий результат:

НАЗВАНИЕ ОБЪЕМА ДРАЙВЕРА
местный c2d2815ba1a75fbfe5d0a4b69d94269e55ccbc138c7d2e19504e501f1dbe634f
местный myvolume

Если вы хотите увидеть больше информации о томе, выполните следующую команду:

докер проверяет myvolume

После выполнения указанной выше команды вы должны получить следующий результат:

[

"CreatedAt": "2020-09-12T04: 51: 31Z",
«Водитель»: «местный»,
"Ярлыки": ,
«Точка монтирования»: «/ var / lib / docker / volume / myvolume / _data»,
«Имя»: «myvolume»,
"Параметры": ,
«Сфера»: «местный»

]

Смонтировать том

На данный момент у вас есть один том с именем myvolume. В этом примере вы создадите контейнер и подключите myvolume к контейнеру.

Вы можете использовать параметр -mount для монтирования тома. Базовый синтаксис для подключения тома к контейнеру показан ниже:

docker run --mount source = имя-тома, назначение = путь-внутри-контейнера docker-images

Например, чтобы создать контейнер Ubuntu и подключить myvolume к контейнеру, выполните следующую команду:

docker run -it --name = volumecontainer --mount source = myvolume, destination = / data ubuntu

Эта команда извлечет образ Ubuntu из Docker Hub, запустит контейнер в интерактивном режиме с именем volumecontainer и смонтирует контейнер myvolume в / data внутри каталога / data:

Не удалось найти изображение ubuntu: latest локально
последнее: извлечение из библиотеки / ubuntu
54ee1f796a1e: вытягивание завершено
f7bfea53ad12: Вытягивание завершено
46d371e02073: Вытягивание завершено
b66c17bbf772: Вытягивание завершено
Дайджест: sha256: 31dfb10d52ce76c5ca0aa19d10b3e6424b830729e32a89a7c6eee2cda2be67a5
Статус: загружено более новое изображение для ubuntu: последнее
корень @ 06a477c4e444: / #

Вы можете проверить смонтированный том с помощью следующей команды:

[электронная почта защищена]: / # ls

Вы должны увидеть каталог данных в следующем выводе:

bin загрузочные данные dev и т. д. главная lib lib32 lib64 libx32 media mnt
opt proc root запустить sbin srv sys tmp usr var

Теперь мы создадим образец файла с именем file.txt внутри каталога / data с помощью следующей команды:

echo "Это тестовый файл!"> / данные / файл.текст

Выйдите из контейнера с помощью следующей команды:

выход

Снова запустите тот же контейнер с помощью следующей команды:

Docker контейнер запускает volumecontainer

Затем прикрепите работающий контейнер с помощью следующей команды:

docker exec -it volumecontainer / bin / bash

Проверьте, есть ли у вашего файла.txt является постоянным со следующим:

данные кошки / файл.текст

После ввода указанной выше команды вы должны получить следующий результат:

Это тестовый файл!

Совместное использование данных между контейнерами

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

Как вы знаете, мы создали том с именем myvolume и новый контейнер с именем volumecontainer, используя этот том. Мы также создали файл с именем file.txt внутри тома.

Теперь мы создадим еще один контейнер с именем volumecontainer1 с тем же объемом myvolume, используя следующую команду:

docker run -it --name = volumecontainer1 --mount source = myvolume, destination = / data ubuntu

Запустите команду ls, как показано ниже:

ls

Вы должны увидеть каталог данных в следующем выводе:

bin загрузочные данные dev и т. д. домой lib lib32 lib64 libx32
media mnt opt ​​proc root run sbin srv sys tmp usr var

Выполните следующую команду, чтобы проверить файл.текст:

кошка / данные / файл.текст

Вы должны увидеть тот же контент, который вы создали в предыдущем контейнере:

Это тестовый файл!

Смонтировать каталог как том

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

docker run -v "имя_каталога": имя_тома изображение-докера

Создайте каталог с именем / data внутри хоста Docker с помощью следующей команды:

mkdir / Данные

Затем создайте несколько файлов в каталоге / Data:

cd / данные
сенсорный файл1.txt file2.txt file3.текст

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

docker run -it --name = data1 -v / Data: / Data ubuntu

Эта команда создаст новый контейнер и смонтирует том с именем / Data.

Выполните следующую команду, чтобы проверить содержимое каталога / Data:

ls -l / Data /

Вы должны увидеть все файлы, которые мы ранее создали в хост-системе, как показано ниже:

всего 0
-rw-r - r-- 1 root root 0 сен 12 05:41 файл1.текст
-rw-r - r-- 1 root root 0 сен 12 05:41 файл2.текст
-rw-r - r-- 1 root root 0 сен 12 05:41 file3.текст

Удалить том Docker

Вы можете легко удалить или удалить том, используя следующий синтаксис:

том docker rm имя тома

Например, чтобы удалить том с именем myvolume, выполните следующую команду:

объем докера rm myvolume

Вы должны получить следующую ошибку:

Ответ от демона об ошибке: удалить myvolume:
том используется - [06a477c4e4444c0f815a1ec4a151a8
339bf53d5060c492af867bcaebe531dd5d, fd8d05a027a755f
1df004ccf62568b5d66989c2112115c8a652ddbc8eb960948]

Это потому, что ваш том используется контейнером. Итак, вам нужно будет остановить и удалить контейнер перед извлечением объема.

Чтобы остановить и удалить контейнер, выполните следующую команду:

контейнер docker stop volumecontainer volumecontainer1
контейнер для докеров rm volumecontainer volumecontainer1

Теперь вы можете легко удалить громкость.

Заключение

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

Экранный трекпад и указатель мыши AppyMouse для планшетов с Windows
Пользователи планшетов часто пропускают указатель мыши, особенно когда они привыкли пользоваться ноутбуками. Смартфоны и планшеты с сенсорным экраном ...
Средняя кнопка мыши не работает в Windows 10
В средняя кнопка мыши помогает пролистывать длинные веб-страницы и экраны с большим объемом данных. Если это прекратится, вы в конечном итоге будете и...
Как изменить левую и правую кнопки мыши на ПК с Windows 10
Совершенно нормально, что все устройства компьютерной мыши эргономичны для правшей. Но есть мышиные устройства, специально разработанные для левшей ил...