2.1 Основные команды docker volume
Тома (volumes) в Docker обеспечивают долговременное хранение данных контейнеров и позволяют легко управлять и изолировать данные. Команда docker volume предоставляет набор инструментов для создания, управления и удаления томов. В этой лекции мы рассмотрим, как использовать команду docker volume для эффективного управления томами в Docker.
Основные команды docker volume:
docker volume createdocker volume lsdocker volume inspectdocker volume rmdocker volume prune
2.2 Создание тома: docker volume create
Команда docker volume create используется для создания нового тома. По умолчанию Docker создает том в стандартном месте на хосте, но вы также можете указать различные параметры для настройки тома.
Простой пример создания тома
Этот пример создаст том с именем my_volume.
docker volume create my_volume
Создание тома с настройками
Вы можете указать драйвер и параметры для создания тома с определенными характеристиками.
docker volume create --driver local --opt o=uid=1000 --opt o=gid=1000 --opt type=tmpfs --opt
device=tmpfs my_custom_volume
Все эти параметры мы рассмотрим ниже, пока не сильно на них обращайте внимание.
2.3 Список томов: docker volume ls
Команда docker volume ls отображает список всех томов, созданных на хосте.
docker volume ls
Вывод будет содержать информацию о всех существующих томах:
DRIVER VOLUME NAME
local my_volume
local my_custom_volume
2.4 Информация о томе: docker volume inspect
Команда docker volume inspect предоставляет детальную информацию о конкретном томе, включая его местоположение, параметры и использование.
docker volume inspect my_volume
Вывод команды будет содержать информацию в формате JSON:
[
{
"CreatedAt": "2023-07-26T12:34:56Z",
"Driver": "local",
"Labels": {},
"Mountpoint": "/var/lib/docker/volumes/my_volume/_data",
"Name": "my_volume",
"Options": {},
"Scope": "local"
}
]
2.5 Удаление тома: docker volume rm
Команда docker volume rm используется для удаления тома. Важно убедиться, что том не используется контейнерами перед его удалением.
Удаление тома
Если том используется, Docker выдаст ошибку, указывая, что том не может быть удален.
docker volume rm my_volume
Очистка неиспользуемых томов: docker volume prune
Команда docker volume prune удаляет все неиспользуемые тома, что помогает освободить место на диске.
Очистка неиспользуемых томов
После выполнения команды Docker запросит подтверждение перед удалением всех неиспользуемых томов.
docker volume prune
2.6 Примеры практического использования команд
Пример 1: Создание и использование тома в контейнере
Создание тома:
docker volume create app_data
Запуск контейнера с использованием тома:
docker run -d --name my_app -v app_data:/usr/share/nginx/html nginx
В этом примере том app_data монтируется в директорию /usr/share/nginx/html контейнера nginx.
Пример 2: Получение информации о томе
Создание тома:
docker volume create logs_data
Запуск контейнера с использованием тома:
docker run -d --name log_app -v logs_data:/var/log/app busybox
Просмотр информации о томе:
docker volume inspect logs_data
Пример 3: Удаление и очистка томов
Создание и использование тома:
docker volume create temp_data
docker run -d --name temp_app -v temp_data:/tmp busybox
Остановка и удаление контейнера:
docker stop temp_app
docker rm temp_app
Удаление тома:
docker volume rm temp_data
Очистка всех неиспользуемых томов:
docker volume prune
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ