Достаточно часто при использование виртуализации при помощи контейнеров 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 — имя нового контейнера на другой машине.
Перевод из форума отсюда.