aws-ami-builder▌
hashicorp/agent-skills · updated Apr 8, 2026
Build custom Amazon Machine Images with Packer's amazon-ebs builder.
- ›Automates AMI creation from source AMIs using HCL templates with provisioners for customization (shell scripts, file uploads, configuration management)
- ›Supports multi-region AMI distribution via ami_regions and flexible source AMI filtering by name, owner, and virtualization type
- ›Authenticates via environment variables, AWS credentials file, or IAM instance profiles; includes validation and build commands for templa
AWS AMI Builder
Build Amazon Machine Images (AMIs) using Packer's amazon-ebs builder.
Reference: Amazon EBS Builder
Note: Building AMIs incurs AWS costs (EC2 instances, EBS storage, data transfer). Builds typically take 10-30 minutes depending on provisioning complexity.
Basic AMI Template
packer {
required_plugins {
amazon = {
source = "github.com/hashicorp/amazon"
version = "~> 1.3"
}
}
}
variable "region" {
type = string
default = "us-west-2"
}
locals {
timestamp = regex_replace(timestamp(), "[- TZ:]", "")
}
source "amazon-ebs" "ubuntu" {
region = var.region
instance_type = "t3.micro"
source_ami_filter {
filters = {
name = "ubuntu/images/*ubuntu-jammy-22.04-amd64-server-*"
root-device-type = "ebs"
virtualization-type = "hvm"
}
most_recent = true
owners = ["099720109477"] # Canonical
}
ssh_username = "ubuntu"
ami_name = "my-app-${local.timestamp}"
tags = {
Name = "my-app"
BuildDate = local.timestamp
}
}
build {
sources = ["source.amazon-ebs.ubuntu"]
provisioner "shell" {
inline = [
"sudo apt-get update",
"sudo apt-get upgrade -y",
]
}
}
Common Source AMI Filters
Ubuntu 22.04 LTS
source_ami_filter {
filters = {
name = "ubuntu/images/*ubuntu-jammy-22.04-amd64-server-*"
root-device-type = "ebs"
virtualization-type = "hvm"
}
most_recent = true
owners = ["099720109477"] # Canonical
}
Amazon Linux 2023
source_ami_filter {
filters = {
name = "al2023-ami-*-x86_64"
root-device-type = "ebs"
virtualization-type = "hvm"
}
most_recent = true
owners = ["amazon"]
}
Multi-Region AMI
source "amazon-ebs" "ubuntu" {
region = "us-west-2"
instance_type = "t3.micro"
source_ami_filter {
filters = {
name = "ubuntu/images/*ubuntu-jammy-22.04-amd64-server-*"
}
most_recent = true
owners = ["099720109477"]
}
ssh_username = "ubuntu"
ami_name = "my-app-${local.timestamp}"
# Copy to additional regions
ami_regions = ["us-east-1", "us-east-2", "eu-west-1"]
}
Authentication
Packer uses AWS credential resolution:
- Environment variables:
AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY - AWS credentials file:
~/.aws/credentials - IAM instance profile (when running on EC2)
export AWS_ACCESS_KEY_ID="your-access-key"
export AWS_SECRET_ACCESS_KEY="your-secret-key"
export AWS_REGION="us-west-2"
packer build .
Build Commands
# Initialize plugins
packer init .
# Validate template
packer validate .
# Build AMI
packer build .
# Build with variables
packer build -var "region=us-east-1" .
Common Issues
SSH Timeout
- Ensure security group allows SSH (port 22)
- Verify subnet has internet access
AMI Already Exists
- AMI names must be unique
- Use timestamp in name:
my-app-${local.timestamp}
Volume Size Too Small
- Check source AMI's volume size
- Set
launch_block_device_mappings.volume_sizeaccordingly
References
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
Ratings
4.6★★★★★44 reviews- ★★★★★Ganesh Mohane· Dec 20, 2024
Useful defaults in aws-ami-builder — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
- ★★★★★Meera Singh· Dec 20, 2024
aws-ami-builder reduced setup friction for our internal harness; good balance of opinion and flexibility.
- ★★★★★Aisha Abbas· Dec 8, 2024
aws-ami-builder is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
- ★★★★★Mei Garcia· Dec 4, 2024
aws-ami-builder has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Li Thomas· Dec 4, 2024
aws-ami-builder fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Aanya Verma· Nov 27, 2024
Useful defaults in aws-ami-builder — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
- ★★★★★Michael Menon· Nov 23, 2024
Registry listing for aws-ami-builder matched our evaluation — installs cleanly and behaves as described in the markdown.
- ★★★★★Sakshi Patil· Nov 11, 2024
aws-ami-builder is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
- ★★★★★Mei Torres· Nov 11, 2024
We added aws-ami-builder from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Aisha Choi· Nov 3, 2024
Solid pick for teams standardizing on skills: aws-ami-builder is focused, and the summary matches what you get after install.
showing 1-10 of 44