4 ms·
I've been having trouble figuring out the value-add of using Docker over Ubuntu's built-in LXC functionality [1]. [1] https://help.ubuntu.com/12.04/serverguide
by csense 13y ago
I've been having trouble figuring out the value-add of using Docker over Ubuntu's built-in LXC functionality [1].
[1] https://help.ubuntu.com/12.04/serverguide/lxc.html https://help.ubuntu.com/12.04/serverguide/lxc.html
- shykes 13y agoHere's another Stack Overflow question which addresses that exact question: http://stackoverflow.com/questions/17989306/what-does-docker-add-to-just-plain-lxc http://stackoverflow.com/questions/17989306/what-does-docker...
- deleted 13y ago[deleted]
- jaytaylor 13y agoI also found myself asking this same question, and after careful consideration I ended up choosing LXC over Docker, and here are some reasons why: - LXC works fine on it's own. - Docker has it's own bugs, so you get all of the Docker bugs in addition to potential LXC bugs. - IPTables routing for containers to the outside world isn't that hard to manage. - LXC is simple and straightforward, and by comparison Docker is a convoluted confusing mess of additional layers of complexity. - LXC is already used in many real-world applications for operational software everyday. If you want to know anything else about real-world usage of LXC, please feel free to contact me (jay at jaytaylor com), or check out my relevant project: ShipBuilder [1]. [1] https://github.com/sendhub/shipbuilder https://github.com/sendhub/shipbuilder
- pestaa 13y agoLooks like ShipBuilder has overlap with Docker, if not a direct competitor. A disclaimer wouldn't have hurt in my opinion.
- jaytaylor 13y agoI don't follow. ShipBuilder uses LXC and is a complete open-source self-hosted PaaS; a Heroku-clone. How is it a Docker competitor? I cite it merely as an example of the sorts of cool things which are possible with LXC.
- xnxn 13y agoTruthfully, you plug ShipBuilder more frequently than I am comfortable with. It makes your related comments seem disingenuous.
- crashoverdrive 13y agoTruthfully then by your own moral high bar, Shykes plugging of Docker should make you really uncomfortable. If you however allow yourself to take a step back and realize these threads are directed at real people trying to help each other with real problems, (Though arguably some do it for money) Then you can allow yourself to see it as helpfulness. Because in reality, What is personal gain of plugging an open source free product that helps people?
- zapt02 13y agoFully agree!!
- contingencies 13y agoShipbuilder = webapp-focused PaaS built from haproxy + LXC Docker = app-focused container API thang built from LXC with a historically strong aufs+ubuntu focus and limited support for more exotic setups LXC = do anything the hell you want
- deleted 13y ago[deleted]
- derefr 13y agoIgnore everything about the way the Docker daemon is currently implemented; it's irrelevant to what Docker is. Docker is a container file-format standard (and a container registry-service protocol), allowing you to build single VM-like images on one computer, and then run them on another, with the only thing in common being that they both support "Docker container format." Right now, the only thing that supports Docker container format is Linux's dockerd implementation, which happens to use LXC+AUFS. Later on, Docker containers could be deployed "baked" into Xen images, or (if all the code inside them is architecture-neutral) deployed onto a FreeBSD dockerd that uses jails, etc. Docker is about the tools to construct and manage containers, not the specific technology behind the deploy-target; the deploy-target is effectively commoditized by having a common container format!
- nl 13y agoI started reading that documentation. It's excellent, and I think possibly the longest piece of Ubuntu documentation I've seen. OTOH, docker lets me go *docker run ....." and have all of that done for me. That's where the value-add is for me.
- csense 13y agoI read some more about Docker since posting the parent. The deal-killer for me is that Docker doesn't work on btrfs, and I've been running on btrfs for a while now. Apparently it's actually bugs in the aufs kernel code when using it with a btrfs filesystem. I found a closed issue [1], apparently Docker is currently focusing on refactoring the existing code to have a more extensible plugin-style architecture, and will eventually make a btrfs plugin. That's probably better in the long-run for the project, since it means they won't duplicate work twice, but for right now, it means that my setup isn't supported. Also, support for non-amd64 hosts or guests is highly unsupported and somewhat not-working right now, and networking configuration leaves something to be desired. So I'd say Docker's still really, really immature. [1] https://github.com/dotcloud/docker/issues/443?source=cc https://github.com/dotcloud/docker/issues/443?source=cc
- nickstinemates 13y agoYou'll be happy to know that btrfs support will come come through devmapper by 0.7.