github.com/phobos182/packer@v0.2.3-0.20130819023704-c84d2aeffc68/website/source/intro/use-cases.html.markdown (about) 1 --- 2 layout: "intro" 3 page_title: "Use Cases" 4 prev_url: "/intro/why.html" 5 next_url: "/intro/platforms.html" 6 next_title: "Supported Platforms" 7 --- 8 9 # Use Cases 10 11 By now you should know what Packer does and what the benefits of image 12 creation are. In this section, we'll enumerate _some_ of the use cases 13 for Packer. Note that this is not an exhaustive list by any means. There are 14 definitely use cases for Packer not listed here. This list is just meant 15 to give you an idea of how Packer may improve your processes. 16 17 ### Continuous Delivery 18 19 Packer is lightweight, portable, and command-line driven. This makes it the 20 perfect tool to put in the middle of your continuous delivery pipeline. Packer 21 can be used to generate new machine images for multiple platforms on every 22 change to Chef/Puppet. 23 24 As part of this pipeline, the newly created images can then be launched and 25 tested, verifying the infrastructure changes work. If the tests pass, you can 26 be confident that that image will work when deployed. This brings a new level 27 of stability and testability to infrastructure changes. 28 29 ### Dev/Prod Parity 30 31 Packer helps [keep development, staging, and production as similar as possible](http://www.12factor.net/dev-prod-parity). 32 Packer can be used to generate images for multiple platforms at the same time. 33 So if you use AWS for production and VMware (perhaps with [Vagrant](http://www.vagrantup.com)) 34 for development, you can generate both an AMI and a VMware machine using 35 Packer at the same time from the same template. 36 37 Mix this in with the continous delivery use case above, and you have a pretty 38 slick system for consistent work environments from development all the 39 way through to production. 40 41 ### Appliance/Demo Creation 42 43 Since Packer creates consistent images for multiple platforms in parallel, 44 it is perfect for creating [appliances](http://en.wikipedia.org/wiki/Software_appliance) 45 and disposable product demos. As your software changes, you can automatically 46 create appliances with the software pre-installed. Potential users can then 47 get started with your software by deploying it to the environment of their 48 choice. 49 50 Packaging up software with complex requirements has never been so easy. 51 Or enjoyable, if you ask me.