Packer logo
Create identical machine images for multiple platforms from a single source configuration

What is Packer?

Packer automates the creation of any type of machine image. It embraces modern configuration management by encouraging you to use automated scripts to install and configure the software within your Packer-made images.
Packer is a tool in the Infrastructure Build Tools category of a tech stack.
Packer is an open source tool with 9.1K GitHub stars and 2.5K GitHub forks. Here’s a link to Packer's open source repository on GitHub

Who uses Packer?

147 companies reportedly use Packer in their tech stacks, including Instacart, Oscar Health, and Razorpay.

158 developers on StackShare have stated that they use Packer.

Packer Integrations

Amazon EC2, DigitalOcean, Google Compute Engine, Docker, and OpenStack are some of the popular tools that integrate with Packer. Here's a list of all 11 tools that integrate with Packer.

Why developers like Packer?

Here’s a list of reasons why companies and developers use Packer
Packer Reviews

Here are some stack decisions, common use cases and reviews by companies and developers who chose Packer in their tech stack.

Pedro Arnal Puente
Pedro Arnal Puente
CTO at La Cupula Music SL · | 6 upvotes · 2.5K views
atLa Cupula Music SLLa Cupula Music SL
Amazon ElastiCache
Amazon RDS for Aurora
Amazon S3
Amazon EC2

Our base infrastructure is composed of Debian based servers running in Amazon EC2 , asset storage with Amazon S3 , and Amazon RDS for Aurora and Redis under Amazon ElastiCache for data storage.

We are starting to work in automated provisioning and management with Terraform , Packer , and Ansible .

See more
Josh Frye
Josh Frye
Senior Software Engineer at StackShare · | 3 upvotes · 8.7K views

I use Vagrant to build Railsbox. I base the final image off of another Vagrant base image Ubuntu to speed up build times. In the past I've used Packer to build the image, but installing Ubuntu from scratch takes too much time. Using a base VirtualBox image allows me to compose a Vagrantfile similar to Docker's "FROM image" command #devops #VirtualMachine #VirtualizationPlatform

See more
John Kodumal
John Kodumal
CTO at LaunchDarkly · | 2 upvotes · 19.9K views

LaunchDarkly is almost a five year old company, and our methodology for deploying was state of the art... for 2014. We recently undertook a project to modernize the way we #deploy our software, moving from Ansible-based deploy scripts that executed on our local machines, to using Spinnaker (along with Terraform and Packer) as the basis of our deployment system. We've been using Armory's enterprise Spinnaker offering to make this project a reality.

See more

Packer's Features

  • Super fast infrastructure deployment. Packer images allow you to launch completely provisioned and configured machines in seconds, rather than several minutes or hours.
  • Multi-provider portability. Because Packer creates identical images for multiple platforms, you can run production in AWS, staging/QA in a private cloud like OpenStack, and development in desktop virtualization solutions such as VMware or VirtualBox.
  • Improved stability. Packer installs and configures all the software for a machine at the time the image is built. If there are bugs in these scripts, they'll be caught early, rather than several minutes after a machine is launched.
  • Greater testability. After a machine image is built, that machine image can be quickly launched and smoke tested to verify that things appear to be working. If they are, you can be confident that any other machines launched from that image will function properly.

Packer Alternatives & Comparisons

What are some alternatives to Packer?
With Terraform, you describe your complete infrastructure as code, even as it spans multiple service providers. Your servers may come from AWS, your DNS may come from CloudFlare, and your database may come from Heroku. Terraform will build all these resources across all these providers in parallel.
AWS CloudFormation
You can use AWS CloudFormation’s sample templates or create your own templates to describe the AWS resources, and any associated dependencies or runtime parameters, required to run your application. You don’t need to figure out the order in which AWS services need to be provisioned or the subtleties of how to make those dependencies work.
GeoEngineer uses Terraform to plan and execute changes, so the DSL to describe resources is similar to Terraform's. GeoEngineer's DSL also provides programming and object oriented features like inheritance, abstraction, branching and looping.
Habitat is a new approach to automation that focuses on the application instead of the infrastructure it runs on. With Habitat, the apps you build, deploy, and manage behave consistently in any runtime — metal, VMs, containers, and PaaS. You'll spend less time on the environment and more time building features.
Atlas is one foundation to manage and provide visibility to your servers, containers, VMs, configuration management, service discovery, and additional operations services.
See all alternatives

Packer's Stats

Packer's Followers
183 developers follow Packer to keep up with related blogs and decisions.
Russ Brenner
Matthew Thomas
Dale-Kurt Murray
Naresh Kancharla
Dylan Schultz
Claudiu Nutu
Michael Aldridge