| --- |
| description: | |
| Builders are responsible for creating machines and generating images from them |
| for various platforms. |
| page_title: Builders |
| --- |
| |
| # Builders |
| |
| Builders create machines and generate images from those machines for various platforms. Packer also has some builders that perform helper tasks, like running provisioners. |
| |
| Packer has the following types of builders: |
| |
| - [Plugin](/packer/plugins): Each plugin has its own associated set of builders. For example, there are separate builders for EC2, VMware, VirtualBox, etc. |
| - [File](/packer/docs/builders/file): The `file` builder creates an artifact from a file. |
| - [Null](/packer/docs/builders/null): The `null` builder sets up an SSH connection and runs the provisioners. |
| - [Custom](/packer/docs/plugins/creation/custom-builders): You can write new builders for new or existing platforms. |
| - [Community-Supported](/packer/docs/builders/community-supported): The Packer community develops and maintains builders for several additional platforms. |
| |
| Refer to the [`source`](/packer/docs/templates/hcl_templates/blocks/source) block documentation to learn more about configuring builders in the Packer templating language. |
| |
| |