База знаний по Open Source
Yandex поиск по всему сайту
Авторизация

Достаточно часто при использование виртуализации при помощи контейнеров lxd возникает необходимость переноса контейнеров с компьютера на компьютер. Это можно сделать достаточно просто.

Предположим у вас есть контейнер с именем mycont и его нужно перенести на другой компьютер. Для создания полного бэкапа контейнера как тарбола образа контейнера (image tarball) необходимо сделать следующее:

  • lxc snapshot mycont backup
  • lxc publish mycont/backup --alias mycont-backup
  • lxc image export mycont-backup .
  • lxc image delete mycont-backup

После этого в текущей директории появится сжатый файл тарбола с очень большим именем файла, типа:

54ef92a575292deeeec97ad1d8ff6a99fda09e4e6cee15b3aff8453a551affdf.tar.gz

Этот файл нужно перенести на нужный вам компьютер. Для восстановления и создания контейнера из полученного тарбола необходимо выполнить следующие команды::

  • lxc image import TARBALL-NAME --alias mycont-backup
  • lxc launch mycont-backup some-container-name
  • lxc image delete mycont-backup

Где TARBALL-NAME — имя полученного сжатого тарбола, например:

$ lxc image import 54ef92a575292deeeec97ad1d8ff6a99fda09e4e6cee15b3aff8453a551affdf.tar.gz --alias mycont-backup

а some-container-name — имя нового контейнера на другой машине.

Перевод из форума отсюда.