 <p>Modern PAAS systems favour building an image for each customer, creating versioned copies of both software and configuration. This follows the "<a href="http://12factor.net/build-release-run">Build, release, run</a>" recommendation of the 12 factor app website:</p> <ul> <li><a href="http://12factor.net/">http://12factor.net/</a></li> </ul> <p>An docker based example is <a href="http://deis.io/">Deis</a>. It uses Heroku build packs to customize the software application environment and the environment settings are also baked into a docker image. At run-time these images are run by chef on each application server.</p> <p>This approach works well with Docker, because images are easy to build. The challenge I think is managing the docker images, something the <a href="http://blog.docker.io/2013/07/how-to-use-your-own-registry/">docker registry</a> is designed to support.</p>