烘焙
目录
实验性
Bake 是一个实验性功能,我们正在寻找用户的反馈意见。
Bake 是 Docker Buildx 的一项功能,它允许您使用声明式文件来定义构建配置,而不是指定复杂的 CLI 表达式。它还允许您通过一次调用并行运行多个构建。
Bake 文件可以用 HCL、JSON 或 YAML 格式编写,其中 YAML 格式是 Docker Compose 文件的扩展。以下是一个 Bake 文件的 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.23"
}
tags = ["myapp/backend:latest"]
}group 块定义了一组可以并行构建的目标。
每个 target 块定义了一个具有自己配置的构建目标,例如构建上下文、Dockerfile 和标签。
要使用上述 Bake 文件调用构建,您可以运行:
$ docker buildx bake
这将执行default组,该组并行构建frontend和backend
目标。
开始使用
要了解如何开始使用 Bake,请访问 Bake 介绍。