Как изменить местоположение по умолчанию для команды «docker create volume»?

При создании томов через API тома, то есть, поскольку шаблон тома контейнера теперь не всегда является лучшей практикой:

# docker volume inspect test-data
[
    {
        "Name": "test-data",
        "Driver": "local",
        "Mountpoint": "/var/lib/docker/volumes/test-data/_data"
    }
]

Например, хотелось бы, чтобы в / data (которые монтировались в другом физическом томе) существовали докеры.

Это невозможно сделать с символическими ссылками, возможно с привязкой привязок, но мне интересно, есть ли какая-то конфигурация в Docker для изменения местоположения по умолчанию для каждого отдельного тома.

docker,docker-volume,

15

Ответов: 2


7 принят
+50

Я знаю только опцию docker для изменения /var/lib/dockerсамой себя, а не ее подпапок (часть ее «графика», используемого драйвером хранения демона докеров )

См. Демон docker «Различные варианты» :

Docker поддерживает программные ссылки для каталога данных Docker ( /var/lib/docker) и for /var/lib/docker/tmp. И данные каталог может быть установлен следующим образом:
DOCKER_TMPDIR

DOCKER_TMPDIR=/mnt/disk2/tmp /usr/local/bin/docker daemon -D -g /var/lib/docker -H unix:// > /var/lib/docker-machine/docker.log 2>&1
# or
export DOCKER_TMPDIR=/mnt/disk2/tmp
/usr/local/bin/docker daemon -D -g /var/lib/docker -H unix:// > /var/lib/docker-machine/docker.log

Как упоминалось в разделе « Где хранятся файлы докеров, хранящиеся на главной машине? » (И это будет применяться также для контейнеров / томов):

Содержимое /var/lib/dockerкаталога меняется в зависимости от драйвера, который Docker использует для хранения .


0

вы можете изменить, где докеры хранят свои файлы, включая тома, изменяя один из параметров запуска. файл обычно находится на /lib/systemd/system/docker.service

from
ExecStart=/usr/bin/dockerd -H fd://
to
ExecStart=/usr/bin/dockerd -g /your/newLocation/folder/  -H fd:// 

перезагружать докеры и ваши тома будут находиться под / yournewlocation / volume / {volumenam} / _ data

потому что вам также необходимо переместить существующие данные из / var / lib / docker / в новое место

вы можете использовать sylinks из нового местоположения, если вы хотите, чтобы определенные папки находились в определенном месте.

Докер, докер-объем,
Похожие вопросы
Яндекс.Метрика