До недавней версии Docker (v1.10) нам полагали, что мы можем использовать DOC: контейнеры только для данных. Поэтому я бы создал такой DOC (на основе, например, busybox), и использовал --volumes-from
, чтобы связать его с моим контейнером. Вы все еще можете прочитать об этом в документации Docker.
С новой версией docker говорится, что вместо DOC мы должны использовать named volumes
. Ниже приведен пример docker-compose.yml
:
version: '2'
services:
elasticsearch:
image: elasticsearch:2.2.0
command: elasticsearch -Des.network.host=0.0.0.0
ports:
- "9201:9200"
volumes:
- "es-data:/usr/share/elasticsearch/data"
volumes:
es-data:
Здесь мы создали и использовали именованный том es-data
.
До сих пор не так много документации по этой новой функции. Я спрашиваю:
- Можно ли заменить DOC именованными контейнерами? Как долго сохраняется объем? Что делать, если я удаляю контейнер, который его использует?
- Как мы можем, например, резервное копирование сейчас? Раньше я мог
docker run --rm --volumes-from es-data ...
, а затемtar
.