Puppet Embraces Docker Containers for Delivery
Updated · Jun 03, 2016
Puppet is widely used by organizations today as part of a DevOps model and to help enable configuration management, as well as application deployment. Now Puppet is wading into the Docker container world, by providing Puppet’s namesake application as a Docker container.
The effort is not yet a full product-ready technology, but it’s getting there. Gareth Rushgrov, senior software engineer at Puppet, is helping containerize Puppet and is set to deliver a talk about the experience at DockerCon in Seattle at the end of the month.
“We’re using Docker as an alternative packaging format,” Rushgrov said. “So you could take a machine that had Docker on it, however Docker got installed – which itself could have been via Puppet – and now you can run Puppet on top of that.”
Puppet typically works by deploying Puppet agents on servers that then “call home” to the Puppet application to provide information on configuration status. So if a container user had a cluster of container applications already set up and running using Docker Swarm or Kubernetes, Puppet can be used to help get insight into other containers that are already running.
The Puppet Docker images are being made available on Docker Hub, but are not full official images initially. While the plan is for the images to be become official, the initial release is focused on developers, Rushgrov said.
“Developers are using Docker locally to manage and isolate dependencies,” he said. “What the new Puppet Docker images provide is a really simple way of standing up a full Puppet stack easier locally.”
From an application development perspective, building Puppet as Docker images can be an involved process that has some emerging best practices, which is what Rushgrov will address at DockerCon.
“On the container side, building Docker images is still something of a new area that is emerging and evolving,” Rushgrov said. “The build chain that we’re using images with is something that we’ll be open sourcing.”
Most Docker images at this point are just existing elements that are now being compiled in a Docker-native way. Rushgrov said that the Puppet approach to building Docker container images isn’t necessarily novel, but the way different elements are tied together is quite involved and interesting.
Sean Michael Kerner is a senior editor at Enterprise Apps Today and InternetNews.com. Follow him on Twitter @TechJournalist.