Перемещение хранилища докеров в новое (зашифрованное) место
Я пытаюсь переместить хранилище образов докера.
ОС Linux Mint 18.3
Я пробовал несколько подходов, в том числе:
файл конфигурации демона /etc/docker/daemon.json
{ "graph": "/new/dir/docker"}
модифицирующий
DOCKER_OPTS
("-g /new/dir/docker"
)- даже меняя
docker.service
файл с опцией выше
Я тоже синхронизировал оригинал /var/lib/
место с новым. После того, как я перезагрузил демон и попытался запустить службу Docker, я обычно получаю это предупреждение:
Предупреждение: docker.service изменен на диске. Запустите 'systemctl daemon-reload', чтобы перезагрузить юниты. Не удалось выполнить задание для docker.service, поскольку процесс управления завершился с кодом ошибки. Смотрите "systemctl status docker.service" и "journalctl -xe" для подробностей.
systemctl status docker.service
дает это:
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Fri 2018-02-02 17:04:31 CET; 7min ago
Docs: https://docs.docker.com
Process: 6941 ExecStart=/usr/bin/dockerd -g /new/dir/docker -H fd:// (code=exited, status=1/FAILURE)
Main PID: 6941 (code=exited, status=1/FAILURE)
Feb 02 17:04:30 systemd[1]: Starting Docker Application Container Engine...
Feb 02 17:04:30 dockerd[6941]: time="2018-02-02T17:04:30.429876920+01:00" level=info msg="libcontainerd: new containerd process, pid:
Feb 02 17:04:31 dockerd[6941]: time="2018-02-02T17:04:31.449062453+01:00" level=error msg="'overlay2' is not supported over <unknown>"
Feb 02 17:04:31 dockerd[6941]: time="2018-02-02T17:04:31.449096454+01:00" level=error msg="[graphdriver] prior storage driver overlay2
Feb 02 17:04:31 dockerd[6941]: Error starting daemon: error initializing graphdriver: backing file system is unsupported for this graph driver
Feb 02 17:04:31 systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
Feb 02 17:04:31 systemd[1]: Failed to start Docker Application Container Engine.
Feb 02 17:04:31 systemd[1]: docker.service: Unit entered failed state.
Feb 02 17:04:31 systemd[1]: docker.service: Failed with result 'exit-code'. Warning: docker.service changed on disk. Run 'systemctl daemon-reload' to reload units.
Поэтому мне кажется, что он пытается использовать драйвер графа, который не поддерживается в файловой системе этого раздела. Это отформатированный раздел ext4, как и в исходном местоположении, но этот зашифрован. Действительно ли шифрование вызывает проблемы с хранилищем докера? Если это правда, какой драйвер мне использовать? Какие минусы у разных водителей?
-
редактировать
при попытке переключить драйвер на устройство устройства, после перезапуска в моем новом каталоге появляется каталог устройства с метаданными, и он быстро увеличивается до огромного размера, пока не займет весь диск (как только я оставил процесс запущенным, пока он не вырос до 65 ГБ, я чтобы убить его вручную, Ctrl+ C не работает)
edit2
кажется, что он никогда не сможет работать с ecryptfs https://github.com/moby/moby/issues/22577