Dockerlite: Lightweight Linux virtualization with BTRFS and LXC
github.com
github.com
I'm always afraid of 1.0 release stuff for actual production environments, despite who releases it
1) Works for my application.
2) Won't get my head chopped off.
The second is what most developers working inside a hierarchy really want. I am always torn in trying to keep up with new things, because reliability is generally not the focus of new products.
You can use OpenVZ right now for similar things, but it isn't as easy to create small single-use containers.
The nice thing OpenVZ has that docker doesn't currently support is mounting a Host directory (read-only or read-write) into the OpenVZ container so you can easily share lots of data to many containers with one copy. Right now, docker supports sharing volumes between containers, but not with the Host system.
For example, you can make very small OpenVZ containers by using common /usr, /lib, /lib64 directories and mounting them read-only in all of your containers. It's easy to bring up OpenVZ on a Centos6 machine and you can run Ubuntu containers in it if you like.
I have nothing against Docker and hope they keep adding features, but my current experience is with OpenVZ.
https://github.com/dotcloud/docker/pull/602
Dockerlite doesn't have those features, though (keep in mind that dockerlite is just a playground for funky features, nothing else!)
It's a killer feature and extremely useful.
The only feedback is that BTRFS == fsck, and is also sponsored by Oracle, an organization that is killing off the superior, but N.I.H., ZFS. Let's not forget all of their other community fails (Berkeley DB, Java, MySQL, OpenOffice).
FreeBSD ZFS and ZFSonLinux are good-to-go.
Personally I always read the situation as Linux not supporting ZFS because it was born under the Solaris banner, while Btrfs, though being developed "in cooperation with" third parties, is fundamentally a shiny open generic FOSS technology (the name itself eschews branding to make it sound like "look, it's all just B-trees, you can understand this.") Heck, until this conversation, I thought Btrfs was something Linus himself had a stake in, like Git. What wonders a different brand-image can do to people who have incomplete information :)
So far tux3 looks very promising when it comes to the underlying design and the performance. But we shall see about features and stability when it gets closer to completion. And also if any of the added features will hurt performance.
A github issue was created to incorporate BTRFS: https://github.com/dotcloud/docker/issues/443
Dotcloud blog post on dockerlite: http://blog.docker.io/2013/05/btrfs-support-for-docker/
Source: I saw the author's presentation at the docker meetup held at dotcloud a couple months ago.
1. Use BTRFS instead of AUFS, and see if any specific problem arises, or if we hit any corner case when doing that.
2. Setup the network without using LXC default userland tools, in a race-condition free way. This is not as obvious as it sounds.
dockerlite was a success on both accounts. It paved the way for BTRFS support, and gave us some insights about how to make the network setup more flexible.
> Where the name dockerlite comes from?
I keep seeing that sort of arrangement in headings like "How it works?" where I expect it to say "How does it work?" and I'm starting to wonder if that's actually valid English or just a common error.
"This is [how it works]", "How does it work?"
I was wondering [where the name dickerlite comes from]? Where does the name dickerlite come from?
"I was wondering [where the name dickerlite comes from]? Where does the name dickerlite come from?"
I'm also wondering where 'dickerlite' came from..Also, I wonder .. how efficient/correct can be the included JSON parser. Anyone has an idea?
The JSON parser is not "the main part of this project"; it was included just in case we needed to interact with the registry (but it wasn't deemed necessary).