8 ms·
Docker 0.4.0 release note
- SnowLprd 13y agoMany thanks to shykes, mdaniel, backjlack, and the many others that contributed to this terrific release. So much has been accomplished in just a few months, which augurs well for what Docker will look like by year's end. Bravo, everyone.
- shykes 13y agoTLDR: Docker is an open-source engine which automates the deployment of applications as highly portable, self-sufficient containers. Version 0.4 introduces a remote HTTP api, a new Build functionality, and an experimental Openstack integration.
- nutanc 13y agoWould be nice if every post had a TLDR; Maybe someone should hack a tool, point an URL and get a TLDR; version
- Orva 13y agoI think that if post has so trivial amount of information that it can be shortened to TLDR, there is never any need to actually read it
- icebraining 13y agoA TL;DR is just a summary, it doesn't need to contain all the information in the original text to be useful.
- Kudos 13y agoYou're saying that anything that can be summarised must have originally contained a trivial amount of information?
- laumars 13y agoThat's actually how newspapers work though: a big headline to draw your attention, summary to draw your interest and then the body of the article.
- StavrosK 13y agoIsn't that what http://tldr.io/ http://tldr.io/ does?
- fintler 13y agoOn my list of things to do: compare docker to zerovm to libvirt to ??? and figure out which one works will work best with rdma (infiniband) networks. Combined with nixos (maybe), this could work wonders for hpc data provenance.
- shykes 13y agoDocker could be customized to run on ZeroVM :)
- darkarmani 13y agoWhat about OpenVZ? It isn't as light as Docker (you get a whole OS) and solves a different problem, but it is solid at providing a OS virtualized container.
- shykes 13y agoOpenVZ is almost identical to LXC, which is what Docker uses under the hood. You could port Docker to OpenVZ very easily. In fact, there is a plugin planned to do exactly that. Fun fact: before running on lxc, dotCloud (where Docker originated from) was initially based on OpenVZ (which was great). As the mainline kernel's support for containers improved (in large part, I believe, thanks to the pioneering work of OpenVZ), eventually we moved over to that.
- darkarmani 13y agoThanks for the clarification. I'm working on a similar type of product, but involving heavy compute and data analysis. Since we aren't hosting web apps, we don't have the web routing complexity that you have, but we do share a lot of the backend pieces (OpenVZ and unionFS in our case).
- alinspired 13y agoDo you care to elaborate why you switched from OpenVZ to LXC?
- gtaylor 13y agoI'm not sure I'm asking this question correctly, but what kind of performance hit do I take by using a Docker container within an EC2 instance instead of just running straight on the EC2 instance's userspace? I'm not looking for any kind of concrete number, but let's say I've got a Postgres running on an m1.large. Any idea how running Postgres under Docker would change my performance characteristics?
- fintler 13y agoAlmost nothing in most cases, but it depends on what you're doing. Take a look at the benchmarks for lxc. http://lxc.sourceforge.net/index.php/about/kernel-namespaces/network/benchs/ http://lxc.sourceforge.net/index.php/about/kernel-namespaces... Postgres is a beast tho (albeit a cute and friendly beast), it's probably doing something weird that lxc won't like.
- shykes 13y agoThat's correct, you can approximate the overhead of LXC (and any other similar containerization such as OpenVZ, Solaris Zones, BSD jails etc.) as zero. In terms of performance they are closer to chroot than to a virtual machine.
- tachion 13y agoOne of the reasons why I really enjoy while reading the notes is the fact that Docker does not shut itself into Linux world and promises working with alternative technologies, like BSD Jails. That's a great news and I am looking forward to see it happening!
- chrisfarms 13y agoFeels like there is some wheel-reinventing going on here. Maybe someone could help me out on why the build scripts here would be preferable over something like Chef to manage the repeatable builds within a new container? Or maybe I've totally missed the point.
- shykes 13y agoDockerfiles are not a replacement for chef or puppet scripts. They're a very lightweight way to assemble a container by running unix commands, and then freezing that container into an immutable, portable unit of deployment. Some of thos unix commands may be calls to Chef. If you're a chef user, you can use docker to "just-in-time" compile your chef recipes into a container almost as portable as a static binary. You can then send that container to me, and I'll be able to run it regardless of what configuration management I like to use on my machine.
- chrisfarms 13y agoCool, makes sense thanks.
- bryanlarsen 13y agoIt seems to me that you should be able to roll back an built via a Dockerfile back to any step in the build, and then rebuild from that point. A deployment via another CM tool would probably lose that ability. Perhaps it's my inexperience, but I find chef scripts to be very fragile because of the large amount of external dependencies they generally contain. All of these dependencies are very stable: nobody takes down tarballs and packages randomly, but a large number of low probability events can add up to a high probability. That makes image based deployments appealing, but you still need to have a reliable, repeatable capture of the steps that went into building the image...
- jacquesc 13y agoI've used Chef extensively and found this to be exactly the case. In my experience, going back and running deploy scripts I wrote a year ago have about 10% probability of still working. Aside from chef's breaking changes (and versioning mess), there's a ton of things outside of my control that take things down. Debugging has been a nightmare. I love the concepts and community around Chef, but I've found for my use case, it was an all around bad choice.
- incision 13y agoI've been dabbling with docker quite a bit. I'm finding it solid despite the disclaimer against production use.
- cdoxsey 13y agoFWIW I've found precisely the opposite. I ended up having to roll my own lxc wrapper. Maybe in a few months docker will be there, but not right now.
- thelarry 13y agoI started off using my own implementation and was thinking about switching to docker... what made you switch away from docker?
- shykes 13y agoHey guys, for an honest and transparent account of what Docker can and cannot do, and whether it makes sense to use and improve it vs. build your own, come say hi on #docker@freenode. If we think it makes more sense to build your own, we'll tell you, and will share our experience to save you time while we're at it. The more containers out there, the better for everyone :)
- cdoxsey 13y agoIt's poorly documented (so you'll need to dig into the source to figure out how to use it) and at least when I was using it did not play well when scripted (like sending commands to the container). It also wasn't terribly reliable (a command might work one but not the next time) and it seemed like it was in a state of transition. (moving towards a RESTful API?) I just think if you use it now you'll end up writing stuff (at least) twice. Not that raw LXC is much better... It all seems very immature.
- KenCochrane 13y agoCan you give us some examples on where it is poorly documented so that we can fix those issues? Also, if you can let us know what you were doing when the command didn't work the same way every time? Have you filed any issues for those yet? If not, can you, or tell me here and I can do it for you. If we don't know about your issues, it is hard for us to fix them. Thanks
- atsaloli 13y agoSo how does Docker compare to Vagrant (http://www.vagrantup.com/ http://www.vagrantup.com/) ? They sound very similar.
- krakensden 13y agoDocker lets you run separate userspaces on the same kernel. Vagrant provisions Virtualbox, which lets you run separate kernels, on various different virtualized CPU architectures.
- andyl 13y agoIt is possible to use docker/lxc as a Vagrant provider. This means when you run 'vagrant up', your 'machine' could be a lxc container instead of a VirtualBox VM. https://github.com/dotcloud/docker/issues/404 https://github.com/dotcloud/docker/issues/404 http://fabiorehm.com/blog/2013/04/28/lxc-provider-for-vagrant/ http://fabiorehm.com/blog/2013/04/28/lxc-provider-for-vagran...
- atsaloli 13y agoOh, I see. So Docker is more lightweight compared to Virtualbox. Kind of like Solaris zones. Thanks!
- iso8859-1 13y agohttp://stackoverflow.com/q/16647069/309483 http://stackoverflow.com/q/16647069/309483
- thelarry 13y agoRemote api is pretty cool and makes my life easier, but how much functionality does docker provide over running lxc-* style commands?
- philwhln 13y agoI interviewed one of the creators of Docker, Solomon Hykes, last week. Blog post is here. https://news.ycombinator.com/item?id=5816622 https://news.ycombinator.com/item?id=5816622
- rdtsc 13y agoThe main question I have is since it uses LXC, which shares the kernel, I can't have Windows running in Docker or even a different Linux distro (presumably unless they happen to have the same Linux kernel)?
- montecarl 13y agoYou are correct. You must run linux, but since most distros aren't too picky about what kernel version you run, you should be able to run any distro you want.
- sosedoff 13y agoAny plans for btrfs ?
- bgentry 13y agoSounds like it: https://github.com/dotcloud/docker/wiki/Docker-0.4.0-release-note,-June-3-2013#even-more-integrations https://github.com/dotcloud/docker/wiki/Docker-0.4.0-release...
- darkarmani 13y agoPlease, please prioritize shared filesystems/storage with the host. I know it was hotly debated when talking about sharing data between containers, but sharing data with the host is very useful.