---
description: |
  Provisioners use builtin and third-party software to install and configure the
  machine image after booting.
page_title: Provisioners
---

# Provisioners

Provisioners use built-in and third-party software to install and configure the machine image after
booting. Provisioners prepare the system, so you may want to use them for the following use cases:

- installing packages
- patching the kernel
- creating users
- downloading application code

The following provisioners are included with Packer:

- [Breakpoint](/packer/docs/provisioners/breakpoint) - pause until the user presses `Enter` to resume
  a build.
- [File](/packer/docs/provisioners/file) - upload files to machines image during a build.
- [HCP SBOM](/packer/docs/provisioners/hcp-sbom) - upload an SBOM and associate it with an artifact 
   version in the HCP Packer registry.
- [Shell](/packer/docs/provisioners/shell) - run shell scripts on the machines image during a build.
- [Local Shell](/packer/docs/provisioners/shell-local) - run shell scripts on the host running Packer
  during a build.
- [PowerShell](/packer/docs/provisioners/powershell) - run PowerShell scripts on Windows machine
  images during a build.
- [Windows Shell](/packer/docs/provisioners/windows-shell) - run commands using `cmd` on Windows
  machine images during a build.
- [Windows Restart](/packer/docs/provisioners/windows-restart) - initiate a reboot on a Windows
  machine images during a build.

Additional [Community Supported](/packer/docs/provisioners/community-supported) provisioners are
developed and maintained by various members of the community.

Refer to the [`provisioner`](/packer/docs/templates/hcl_templates/blocks/build/provisioner) block
documentation to learn more about working with provisioners.
