Поиск…


Вступление

Точки данных Docker предоставляют возможность сохранять данные независимо от жизненного цикла контейнера. Объемы представлены рядом полезных функций, таких как:

Установка каталога хоста в контейнере, совместное использование данных между контейнерами с использованием файловой системы и сохранение данных, если контейнер удаляется

Синтаксис

  • объем докера [ОПЦИИ] [КОМАНДА]

Установка каталога с локального хоста в контейнер

Можно установить каталог хоста на определенный путь в вашем контейнере, используя --volume командной строки -v или --volume . Следующий пример будет монтировать /etc на хосте в /mnt/etc в контейнере:

(on linux) docker run -v "/etc:/mnt/etc" alpine cat /mnt/etc/passwd
(on windows)  docker run -v "/c/etc:/mnt/etc" alpine cat /mnt/etc/passwd

Доступ по умолчанию к тому внутри контейнера - чтение и запись. Чтобы установить том, доступный только для чтения внутри контейнера, используйте суффикс :ro :

docker run -v "/etc:/mnt/etc:ro" alpine touch /mnt/etc/passwd

Создание именованного тома

docker volume create --name="myAwesomeApp"

Использование именованного тома делает управление томами гораздо более удобочитаемым для человека. Можно создать именованный том, используя указанную выше команду, но также можно создать именованный том внутри команды docker run с помощью опции -v или --volume командной строки:

docker run -d --name="myApp-1" -v="myAwesomeApp:/data/app" myApp:1.5.3

Обратите внимание: создание именованного тома в этой форме аналогично установке файла хоста / каталога в качестве тома, за исключением того, что вместо допустимого пути указывается имя тома. После создания названные тома могут использоваться совместно с другими контейнерами:

docker run -d --name="myApp-2" --volumes-from "myApp-1" myApp:1.5.3

После выполнения вышеуказанной команды был создан новый контейнер с именем myApp-2 из myApp:1.5.3 , который делится myAwesomeApp именем volume с помощью myApp-1 . Мост myAwesomeApp именем volume устанавливается в /data/app в контейнере myApp-2 , так же как он монтируется в /data/app в контейнере myApp-1 .



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow