Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Vagrant is basically a layer on top on virtualbox/vmware that helps you manage VMs more efficiently. It makes it easy to setup your local development enviroments in a vm and replicate the production enviroment for example, instead of installing all the services locally on your machine with homebrew and whatnot and polluting your desktop experience.

Docker is afaik Linux only and uses some kind of container virtualization that makes it possible to run services in a separated virtual enviroment on a per process basis without the need to spin up a full vm with all the overhead. Also these docker containers seem to be portable to different machines pretty easily, making it easy to share enviroments among developers.

Now Fig looks like something to make managing docker containers easier.



I'm still missing a piece of the puzzle. With Vagrant, though heavy weight, I have a completely defined system. If I spin up my production server using the same definition (I use ansible) as my Vagrant config, I guarantee the same outcome. Seems perfect. With Docker, since it relies on the underlying os, it seems I could run into compatibility problems. I understand the "lightweight" aspect, but if I have compatibility problems, that seems not worth the benefit. OR is the issue that those compatibility problems are illusory - Ubuntu 11 will be the same as Ubuntu 12 and CoreOs xx and LinuxZ ZZ? With Docker, what do I lose vs. Vagrant and what do I gain that makes that worthwhile?


with docker, your guest machines run the same kernel as your host, but a different root filesystem and init system. the result is that you can run centOS on docker on Ubuntu, but you'll get centOS with the Ubuntu kernel. So, you lose some flexibility with the kernel of your VM. But a docker container is extremely light weight. it boots in a few hundred milliseconds, and it only costs a small amount more resources to run a service inside docker than if you had just run the service on the host system directly.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: