Search code examples
dockerlxclxd

How is "lxd" different from lxc/docker?


Questions

  • How does lxd provide Full operating system functionality within containers, not just single processes?
  • How is it different from lxc/docker + wrappers?
  • Is it similar to a container that is launched with docker + supervisor/wrapper script to contain multiple processes in one container?

In other words:

  • What can I do with lxd that I cannot do with some wrappers over lxc and docker ?
  • Why is it available only in ubuntu if they are making use of mainline kernel features (namespaces and cgroup )?

Solution

  • LXD works in conjunction with LXC and is not designed to replace or supplant LXC. Instead, it’s intended to make LXC-based containers easier to use through the addition of a back-end daemon supporting a REST API and a straightforward CLI client that works with both the local daemon and remote daemons via the REST API.

    LXD is more like docker host.