главная - Статьи - Linux, FreeBSD
Изменение расположения Docker
Дата обновления: 23.08.2024По-умолчанию, директория docker в системе /var/lib/docker. Но контейнеры занимают много места и использование стандартной директории может быть неудобным. Кроме того, вы можете захотеть хранить все хозяйство docker вообще на отдельном диске и делать копии всего диска. Вариантов как всегда много. Как изменить стандартное расположение docker в linux?
Docker можно конфигурировать с помощью файла конфигурации "daemon.json". Стандартное "базовое" расположение в /etc/docker. Может быть еще в ~/.config/docker/daemon.json или где-нибудь еще (см. https://docs.docker.com/engine/daemon/).
Файла конфигурации /etc/docker/daemon.json может не быть вообще, тогда его надо создать.
1) добавить в файл /etc/docker/daemon.json
{
"data-root": "/path/to/your/docker"
}
2) остановите docker:
$ sudo systemctl stop docker
3) убедитесь, что docker остановлен:
$ ps aux | grep -i docker | grep -v grep
$ systemctl status docker
4) скопируйте файлы из стандартной директории в вашу:
$ sudo rsync -axPS /var/lib/docker/ /path/to/your/docker
Не перенесите, а скопируйте! Если что-то не сработает, спасиьбо скажете себе.
5) запускайте docker:
sudo systemctl start docker
6) проверьте, что ваша опция конфига применена:
$ sudo docker info | grep 'Docker Root Dir'
Docker Root Dir: /path/to/your/docker
7) проверьте, что контейнеры запущены:
$ sudo docker ps
8) удалите старые файлы:
$ sudo rm -r /var/lib/docker
Данная инструкция фактически проверена на Ubuntu, но должна подойти для Debian. И, скорее всего, для других дистрибутивов. Возможно, базовое расположение не в /var/lib/docker/, а где-то еще. Но принцип же ясен.
Авторизуйтесь для добавления комментариев!