Packer - Build d'images (VMs, containers, ISOs)
Find a file
Anurag Sharma 414fe3a275 fix: exclude syft dependency import on NetBSD, OpenBSD, and Solaris
The syft library has a transitive dependency on containerd, which includes
platform-specific code that doesn't compile on NetBSD, OpenBSD, and Solaris.

This change adds build constraints to exclude the syft import on these
platforms. The hcp-sbom provisioner functionality is unaffected since it
downloads and executes pre-built syft binaries at runtime rather than
using the Go library directly. The import exists solely for dependency
tracking in license and security scanning tools.
2026-03-25 22:26:42 +05:30
.github docs: remove docs validation from packer (#13577) 2026-03-25 21:29:13 +05:30
.release [COMPLIANCE] Update Copyright and License Headers 2025-11-30 18:32:15 +00:00
acctest [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 5) 2025-12-11 07:02:12 +00:00
builder [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 5) 2025-12-11 07:02:12 +00:00
cmd [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 5) 2025-12-11 07:02:12 +00:00
command [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 5) 2025-12-11 07:02:12 +00:00
contrib/zsh-completion Update fix command autocomplete to work for JSON template files only (#12366) 2023-04-14 13:00:24 -04:00
datasource [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 5) 2025-12-11 07:02:12 +00:00
examples Fixes typos in docs (#11322) 2021-10-11 10:19:49 +02:00
fix Merge pull request #13545 from hashicorp/compliance/update-headers-batch-2 2025-12-22 15:35:05 +05:30
hcl2template Merge pull request #13545 from hashicorp/compliance/update-headers-batch-2 2025-12-22 15:35:05 +05:30
helper [COMPLIANCE] Update Copyright and License Headers (Batch 2 of 5) 2025-12-11 07:02:15 +00:00
internal Merge pull request #13545 from hashicorp/compliance/update-headers-batch-2 2025-12-22 15:35:05 +05:30
packer feat: native sbom generation for hcp (#13566) 2026-03-25 11:33:00 +05:30
packer_test Updates OpenTelemetry dependencies to v1.41.0 2026-03-20 12:36:37 +05:30
post-processor [COMPLIANCE] Update Copyright and License Headers (Batch 3 of 5) 2025-12-11 07:02:12 +00:00
provisioner fix: exclude syft dependency import on NetBSD, OpenBSD, and Solaris 2026-03-25 22:26:42 +05:30
scripts [COMPLIANCE] Update Copyright and License Headers (Batch 3 of 5) 2025-12-11 07:02:12 +00:00
version version: prepare dev v1.15.1 2026-02-04 13:07:19 +05:30
website Merge pull request #13532 from hashicorp/channel-assignment 2025-12-15 12:27:51 +05:30
.copywrite.hcl update year in license files 2023-12-06 12:43:42 -08:00
.gitattributes HCL2: add templatefile function (#10776) 2021-03-23 12:02:05 +01:00
.gitignore Remove the vendor dir (#10916) 2021-04-21 10:52:55 +02:00
.go-version feat: native sbom generation for hcp (#13566) 2026-03-25 11:33:00 +05:30
.golangci.yml feat: native sbom generation for hcp (#13566) 2026-03-25 11:33:00 +05:30
background_check.go [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 5) 2025-12-11 07:02:12 +00:00
background_check_openbsd.go [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 5) 2025-12-11 07:02:12 +00:00
CHANGELOG.md version: cut release v1.15.0 2026-02-04 10:56:10 +05:30
checkpoint.go [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 5) 2025-12-11 07:02:12 +00:00
CODEOWNERS add access to redirects and readme 2025-02-06 10:32:32 -08:00
commands.go [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 5) 2025-12-11 07:02:12 +00:00
config.go [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 5) 2025-12-11 07:02:12 +00:00
config_test.go [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 5) 2025-12-11 07:02:12 +00:00
Dockerfile Merge pull request #13442 from hashicorp/anshul/docker_img_official_plugin 2026-01-28 10:04:33 +05:30
go Bump Go tooling version to 1.20.8 2023-10-03 10:32:42 -04:00
go.mod feat: native sbom generation for hcp (#13566) 2026-03-25 11:33:00 +05:30
go.sum feat: native sbom generation for hcp (#13566) 2026-03-25 11:33:00 +05:30
LICENSE Update LICENSE 2026-03-11 11:50:07 +05:30
log.go [COMPLIANCE] Update Copyright and License Headers (Batch 2 of 5) 2025-12-11 07:02:15 +00:00
main.go [COMPLIANCE] Update Copyright and License Headers (Batch 2 of 5) 2025-12-11 07:02:15 +00:00
main_test.go [COMPLIANCE] Update Copyright and License Headers (Batch 2 of 5) 2025-12-11 07:02:15 +00:00
Makefile docs: remove docs validation from packer (#13577) 2026-03-25 21:29:13 +05:30
panic.go [COMPLIANCE] Update Copyright and License Headers (Batch 3 of 5) 2025-12-11 07:02:12 +00:00
README.md docs: remove docs validation from packer (#13577) 2026-03-25 21:29:13 +05:30
tty.go [COMPLIANCE] Update Copyright and License Headers (Batch 3 of 5) 2025-12-11 07:02:12 +00:00
tty_solaris.go [COMPLIANCE] Update Copyright and License Headers (Batch 3 of 5) 2025-12-11 07:02:12 +00:00
Vagrantfile vagrantfile: add support for docker provider 2018-10-31 16:58:06 +03:00

Packer

License: BUSL-1.1 Build Status Discuss

HashiCorp Packer logo

Packer is a tool for building identical machine images for multiple platforms from a single source configuration.

Packer is lightweight, runs on every major operating system, and is highly performant, creating machine images for multiple platforms in parallel. Packer supports various platforms through external plugin integrations, the full list of which can be found at https://developer.hashicorp.com/packer/integrations.

The images that Packer creates can easily be turned into Vagrant boxes.

Quick Start

Packer

There is a great introduction and getting started guide for building a Docker image on your local machine without using any paid cloud resources.

Alternatively, you can refer to getting started with AWS to learn how to build a machine image for an external cloud provider.

HCP Packer

HCP Packer registry stores Packer image metadata, enabling you to track your image lifecycle.

To get started with building an AWS machine image to HCP Packer for referencing in Terraform refer to the collection of HCP Packer Tutorials.

Documentation

Comprehensive documentation is viewable on the Packer website at https://developer.hashicorp.com/packer/docs.

Contributing to Packer

See CONTRIBUTING.md for best practices and instructions on setting up your development environment to work on Packer.

Contributing to Documentation

Important: Packer documentation has moved to the hashicorp/web-unified-docs repository.

To contribute documentation changes:

Unmaintained Plugins

As contributors' circumstances change, development on a community maintained plugin can slow. When this happens, HashiCorp may use GitHub's option to archive the plugins repository, to clearly signal the plugin's status to users.

What does unmaintained mean?

  1. The code repository and all commit history will still be available.
  2. Documentation will remain on the Packer website.
  3. Issues and pull requests are monitored as a best effort.
  4. No active development will be performed by HashiCorp.

If you are interested in maintaining an unmaintained or archived plugin, please reach out to us at packer@hashicorp.com.