Задача 1 — необходимо перемещать/var/lib/docker в большой объем
Наш локальный объем диска Linux находится ниже 30 ГБ , так что это будет довольно проблемой для наших изображений Docker, которые занимают много места под /var/lib/docker
Папка и быстро не хватает места.
Решение для проблемы 1
Можно следовать этой артистике — Используйте другой том для ваших изображений Docker в Ubuntu что устанавливает новую громкость папки например /dev/sda2
для /var/lib/docker
и добавить следующую строку
/dev/sda2 /var/lib/docker ext4 defaults 0 1
в /и т.д./fstab
Таким образом, крепление также происходит во время запуска Linux.
Быстрый совет, чтобы получить тип громкости, использует команду df -t
Что я сделал на самом деле следовать за этой артимой — Как перенести каталог данных Docker в другую локацию на Ubuntu
- Остановите демон Docker
$ sudo service docker stop
и убедитесь, что Docker не работает
$ ps faux | grep -i docker
- Сделайте папку и
rsync
файлы
$ mkdir /mnt/docker $ rsync -avxP /var/lib/docker/ /mnt/docker
- Обновление конфигурации Docker
- Добавьте файл конфигурации и сообщите Docker Daemon, каково местонахождение каталога данных, создав файл с именем
daemon.json
в каталоге/etc/docker
Анкет Файл должен иметь контент:
- Добавьте файл конфигурации и сообщите Docker Daemon, каково местонахождение каталога данных, создав файл с именем
{ "data-root":"/mnt/docker" }
- Обновите службу Docker, редактируя
/lib/systemd/system/docker.service
Найдите следующую строку
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
и обновить
ExecStart=/usr/bin/dockerd -g /mnt/docker -H fd:// --containerd=/run/containerd/containerd.sock
- Перезагрузите Docker Daemon
sudo service docker start # reload docker serivce configuration sudo systemctl daemon-reload
- Тест по следующей команде после того, как вы натягиваете изображение
docker inspect image_id | grep WorkDir
Проблема 2 — После перезагрузки Linux изображения Docker исчезли
Изображения Docker в рамках /mnt/docker
ушли, например, /mnt/docker/overlay2
Нет изображений Docker, которые мы вытащили из Docker Hub.
См. Обсуждение GitHub https://github.com/moby/moby/issues/36149 и pr https://github.com/moby/sys/pull/62
Решение для проблемы 2
Пока нет решения, продолжайте искать! Пока что нужно переоценить изображения Docker.
Оригинал: «https://dev.to/dongchaochen/move-varlibdocker-to-different-volume-for-docker-images-54»