3 ms·
I'm currently playing with docker and wonders : how does that tech fits with things like chef/puppet/saltstack ( its conf part) ? Is it going to make all those
by bsaul 13y ago
I'm currently playing with docker and wonders : how does that tech fits with things like chef/puppet/saltstack ( its conf part) ?
Is it going to make all those technologies pointless ?
- shykes 13y agoHi, Docker is pretty complementary with the configuration management tools you mention. Lots of people use them in combination. One common pattern is to use chef/puppet/salt/ansible to help you build the application stack inside the container, then seal the result into a standard Docker container. Once the build phase is over, it no longer matters which configuration management tool you used (if any), which makes your application more portable across infrastructure. See for example http://tech.paulcz.net/2013/09/creating-immutable-servers-with-chef-and-docker-dot-io.html http://tech.paulcz.net/2013/09/creating-immutable-servers-wi...
- mpdehaan2 13y agoHere's a post I wrote about using Ansible inside a docker file -- http://www.ansible.com/blog/2014/02/12/installing-and-building-docker-with-ansible http://www.ansible.com/blog/2014/02/12/installing-and-buildi...
- jpetazzo 13y agoDocker can play with or without Chef/Puppet/Salt/Ansible/etc.: - you can use configuration management tools to author Docker images; - you can use configuration management tools to deploy Docker (and start Docker containers). The following presentation has some Puppet-specific information (but the concepts map neatly to other CM tools): http://www.slideshare.net/jpetazzo/docker-and-puppet-puppet-camp-la-scale12x http://www.slideshare.net/jpetazzo/docker-and-puppet-puppet-...
- bryanlarsen 13y agoYou can can call chef-solo etc inside your Dockerfiles to create your images, and you can use chef/etc to put images on your server and hook them together. The docker "philosophy" is that docker images should be simple, running only a single process. In that case chef-solo et al are often over-kill to create images. Docker mostly solves the "known state" problem, so there really isn't much that chef-solo gives you over running shell commands from your Dockerfile. But sometimes it's convenient to create a single image that encapsulates everything, containing lots of moving parts. In that case, a provisioning tool could be very useful to put it together. You'll probably lose some of the 'layering' benefits of Docker, though. I do find that provisioning tools are very helpful to put images onto a server and hooking them together. That's the central configuration store philosophy. Others are working on stuff like etcd for distributed configuration stores.