Packer (HashiCorp) construit des images de VM/conteneur immuables à partir d’une définition déclarative HCL2. Il ne gère aucune infrastructure vivante — contrairement à Terraform — il produit un artefact (image) que Terraform consomme ensuite via un Instance Template.


Architecture

HubContenu
Architecture — Vue d’ensembleStructure d’un template, cycle de build

Notes détaillées

NoteContenu
Anatomie d’un template Packerpacker{}, variable{}, locals{}, source{}, build{}
BuildersConcept de builder, googlecompute en détail, panorama des builders courants
Provisionersshell, file, ansible, powershell — ordre d’exécution, communicator
Post-processorsmanifest, compress, docker-tag, checksum, vagrant

Commandes

NoteContenu
Commandes Packerinit, validate, build, fmt, inspect, console

Divers

  • Packer — vue d’ensemble, philosophie image immuable vs startup-script

Concepts essentiels

TermeDéfinition
BuilderPlugin qui crée la VM/conteneur temporaire et publie l’artefact
ProvisionerÉtape qui configure la VM temporaire (shell, file, ansible…)
Post-processorTransforme/publie l’artefact après les provisioners (manifest, compress…)
CommunicatorConnexion (SSH/WinRM) utilisée par les provisioners pour agir sur la VM temporaire
ArtefactRésultat produit par un build (image, conteneur…)

En relation avec