有没有办法在Docker中运行LXD?

有没有办法在Docker中运行LXD? 例如。

在与Ubuntu 16.04的主机上:

docker run --rm -it --net host --privileged ubuntu bash 

在容器中:

 apt update && apt install -y lxd iproute2 btrfs-tools screen bash-completion curl wget apt-transport-https lxcfs lxd-tools lxd-client vim overlayroot libkmod2 libkmod-dev cgroup-tools cgroupfs-mount cgroup-bin screen -S lxd # in screen lxd --debug --group lxd lxd init lxc list lxc launch ubuntu:16.04 test 

LXD守护进程的作品,但我不能启动LXD容器由于与cgroups的错误。

 error: Error calling 'lxd forkstart test /var/lib/lxd/containers /var/log/lxd/test/lxc.conf': err='exit status 1' lxc 20170502151757.409 ERROR lxc_apparmor - lsm/apparmor.c:apparmor_process_label_set:220 - If you really want to start this container, set lxc 20170502151757.409 ERROR lxc_apparmor - lsm/apparmor.c:apparmor_process_label_set:221 - lxc.aa_allow_incomplete = 1 lxc 20170502151757.409 ERROR lxc_apparmor - lsm/apparmor.c:apparmor_process_label_set:222 - in your container configuration file lxc 20170502151757.409 ERROR lxc_sync - sync.c:__sync_wait:57 - An error occurred in another process (expected sequence number 5) lxc 20170502151757.409 ERROR lxc_start - start.c:__lxc_start:1346 - Failed to spawn container "test". lxc 20170502151757.954 ERROR lxc_conf - conf.c:run_buffer:405 - Script exited with status 1. lxc 20170502151757.954 ERROR lxc_start - start.c:lxc_fini:546 - Failed to run lxc.hook.post-stop for container "test". 

我也试过:

 --cap-add=ALL --volume /dev:/dev --pid=host --volume /sys/fs/cgroup:/sys/fs/cgroup 

没有。

LXD / LXC提供了一个完整的Linux环境。 Docker是一个引擎,允许你包装应用程序和依赖项。

Docker提供了一个有限的环境,故意禁用某些与networking和存储持久性有关的操作系统function。

您可以在LXD / LXC容器中运行Docker(实际上Docker曾经使用LXC作为其底层技术 – 可能仍然会这样做),但是您不会在Docker容器中运行LXC容器。