Bake
Bake est une fonctionnalité de Docker Buildx qui vous permet de définir votre configuration de build en utilisant un fichier déclaratif, par opposition à la spécification d'une expression CLI complexe. Il vous permet également d'exécuter plusieurs builds simultanément en une seule invocation.
Un fichier Bake peut être écrit aux formats HCL, JSON ou YAML, où le format YAML est une extension d'un fichier Docker Compose. Voici un exemple de fichier Bake au format HCL :
group "default" {
targets = ["frontend", "backend"]
}
target "frontend" {
context = "./frontend"
dockerfile = "frontend.Dockerfile"
args = {
NODE_VERSION = "22"
}
tags = ["myapp/frontend:latest"]
}
target "backend" {
context = "./backend"
dockerfile = "backend.Dockerfile"
args = {
GO_VERSION = "1.24"
}
tags = ["myapp/backend:latest"]
}
Le bloc group
définit un groupe de cibles qui peuvent être construites simultanément.
Chaque bloc target
définit une cible de build avec sa propre configuration, telle que
le contexte de build, le Dockerfile et les tags.
Pour invoquer un build en utilisant le fichier Bake ci-dessus, vous pouvez exécuter :
$ docker buildx bake
Cela exécute le groupe default
, qui construit les cibles frontend
et backend
simultanément.
Démarrer
Pour apprendre à démarrer avec Bake, consultez l'Introduction à Bake.