VOLUME
инструкция становится интересной, когда вы комбинируете ее с volumes-from
параметром времени выполнения.
Учитывая следующий Dockerfile:
FROM busybox
VOLUME /myvolume
Создайте образ с помощью:
docker build -t my-bb .
И раскрутите контейнер с:
docker run --rm -it --name my-first-bb my-bb
Первое, что следует заметить, это папка с именем на этом изображении myvolume
. Но это не особо интересно, так как при выходе из контейнера объем тоже будет удален.
Создайте в этой папке пустой файл, поэтому запустите в контейнере следующее:
cd myvolume
touch hello.txt
Теперь разверните новый контейнер, но разделите тот же объем с my-first-bb
:
docker run --rm -it --volumes-from my-first-bb --name my-second-bb my-bb
Вы увидите, что my-second-bb
файл находится hello.txt
в myvolume
папке.
Как только вы выйдете из обоих контейнеров, ваш том также будет удален.