Packer
Repositório para estudo do Packer
Documentação oficial Repositório oficial do packer
O que é Packer?
O Packer é uma ferramenta de código aberto que permite criar imagens de máquinas idênticas para várias plataformas a partir de um único modelo de código-fonte. O Packer pode criar imagens douradas para usar em pipelines de imagem.
- Binário leve
- Alto desempenho
- Escrito em go
- Simples e eficaz
- roda em todos os principais sistemas operacionais
- Cria imagens de máquina para várias plataformas em paralelo.
O packer não substitui o gerenciamento de configuração como Ansible, mas trabalha em conjunto.

O que é uma Imagem?
Uma imagem de máquina é uma unidade estática única que contém um sistema operacional pré-configurado e um software instalado que é usado para criar rapidamente novas máquinas em execução. Os formatos de imagem de máquina mudam para cada plataforma. Alguns exemplos incluem AMIs para EC2, arquivos VMDK/VMX para VMware, exportações OVF para VirtualBox, etc.
Instalação do Packer
Como mencionamos anteriormente o packer nada mais é que um binário e possuí sua própria cli. Precisa estar no path do sistema para ser encontrado via terminal, logo, deve-se mover o binário para uma pasta que esteja no path do sistema ou adicionar o local de instalação no path.
Packer Installation Documentation
Por exemplo uma instalação no Ubuntu:
wget -O- https://apt.releases.hashicorp.com/gpg | gpg --dearmor | sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install packer
Ou pode baixar o binário direto do repositório.
Estudo
1 - Comandos
2 - Modelo
4 - Projeto
4 - HCP Registry
5 - Variáveis.md
6 - Locals e Functions
7 - Plugins
8 - Build
9 - Exemplo AWS
10 - Exemplo Azure