Я использую Debian 8.4 и хочу установить недавно выпущенный LXD 2.0. Возможно ли это, или мне следует придерживаться LXC? Кажется, все внимание сосредоточено на использовании LXD с Ubuntu.
Если чего-то нет в репозиториях желаемого дистрибутива, но вы по-прежнему хотите запускать приложения / службы поверх него, рано или поздно у вас возникнут проблемы (читайте: дополнительная работа, чтобы все работало).
Если все по-другому (потому что вы знаете, что делаете (tm)), вы будете знать, безопасна ли технология для вас или нет.
На данный момент вам следует придерживаться Ubuntu, если вы действительно хотите, чтобы LXD использовал его в качестве интерфейса для LXC. (Потому что это и есть LXD, интерфейс для LXC.)
Если вам просто нужны контейнеры, но вы все еще хотите придерживаться debian, используйте LXC напрямую. Proxmox основан на Debian, и там у вас также есть поддержка LXC, что, вероятно, может быть лучшим подходом для вас, учитывая зрелость проекта proxmox.
Если вам нужен LXD для непривилегированных контейнеров в debian, попробуйте это с LXC: http://www.linuxquestions.org/questions/linux-kernel-70/lxc-unprivileged-container-in-debian-jessie-cgroups-permissions-4175540174/
Единственная реальная проблема, с которой я столкнулся, заключалась в создании пакетов для Debian. С созданными пакетами все работает очень хорошо, как с Jessie, так и с Stretch.
Компиляция пакетов из исходного кода (с использованием debuild
) может быть немного громоздким, потому что вам может потребоваться обрабатывать зависимости, доступные в Ubuntu, но не в Debian. Этого можно достичь (конечно, для тестовой системы), настроив конфигурацию сборки LXD для использования встроенных пакетов Go, вместо того, чтобы искать их в репозиториях. IIRC, этот параметр называется USE_EMBEDDED
.
В остальном пакеты будут нормально собираться для Джесси и пока работают без каких-либо проблем. То, что вам действительно не нужно, - это пытаться установить пакеты LXD, созданные для Ubuntu, из-за различий в зависимостях.