You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Kaniko中为多阶段Dockerfile指定构建目标?

在Kaniko中指定多阶段Dockerfile的构建目标

没问题!Kaniko完全支持针对多阶段Dockerfile指定特定构建目标,用法和你熟悉的Docker CLI --target 参数几乎一致,只需要通过Kaniko的命令行参数传递就行。

核心用法(Kaniko Executor)

如果你用的是最常用的Kaniko Executor镜像,直接在运行命令时添加 --target <你的阶段名称> 参数即可:

docker run --rm -v $(pwd):/workspace gcr.io/kaniko-project/executor:latest \
  --dockerfile=/workspace/Dockerfile \
  --context=/workspace \
  --target=builder \
  --no-push

这里的builder对应你Dockerfile里定义的阶段名(比如FROM golang:1.20 AS builder里的builder),Kaniko会只构建到这个阶段为止,不会执行后续的阶段步骤。

CI/CD环境中的用法

不管是在GitLab CI、GitHub Actions还是其他CI平台,用法都是类似的——只要在Kaniko的执行配置里加入--target参数就行。比如GitHub Actions里的配置示例:

- name: Build specific stage with Kaniko
  uses: kaniko-project/executor@v1.9.0
  with:
    dockerfile: ./Dockerfile
    context: .
    target: builder
    push: false

小提示

要注意指定的阶段名称必须和Dockerfile里AS关键字后的名称完全匹配,Kaniko对这个名称是大小写敏感的哦。

内容的提问来源于stack exchange,提问作者Timur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 07:53:16