3 ms·
If you want lightweight virtual machine functionality I would recommend LXD/LXC. If you want app virtualization and packaging, I have been pretty intrigued by
by gshulegaard 8y ago
If you want lightweight virtual machine functionality I would recommend LXD/LXC.
If you want app virtualization and packaging, I have been pretty intrigued by what I have found out experimenting with `snaps`.
The biggest issue for me that I have hit with LXD/LXC is that host-to-container mount sharing is not as easy...which means I had to do some workflow alteration for moving from `docker` containers to `lxd` ones for existing projects...but otherwise I have been really happy with LXD.
Edit: And just to be clear, host-to-container mount sharing is possible, I just had to work at it and slightly alter my workflow to get the best solution.
- jchw 8y agoWell, what I really want is to develop, test and utilize containers as part of my development process. For example, doing work in Docker containers allows reproducible, hermetic builds (importantly, it allows this, though it certainly doesn't guarantee or force it.) Many containers that I develop or use will also be used in a Kubernetes cluster or at least as part of CD, so most importantly I want a local setup that mirrors to a degree what the remote setups look like. Snaps provide something a bit different, more geared toward end users. I have no huge opinion regarding them, the isolation aspect is novel but unfortunately a bit of a PITA as of today.
- gshulegaard 8y agoSounds like you would be more interested in LXD then.
- jchw 8y agoLXD is more like virtual machines than containers, though. Also, in context of this thread, it doesn't solve much that Docker doesn't; after all, Docker for Linux is in fact fully open source, and even if it wasn't, Linux has no shortage of mature container implementations (like rkt.) For a developer on Mac or Windows, it'd be nice to have a universal dev tool, even if only to handle Linux containers.
- cyphar 8y ago> Linux has no shortage of mature container implementations (like rkt.) As someone who is a maintainer of the core of what actually runs containers under Docker (runc), LXC (and by extension LXD) is _the_ most mature container implementation on Linux. I've worked with the LXC folks and I am constantly impressed how on-top-of-everything they are.