首页/云/Kubernetes 速查/kubectl set env 更新环境变量
本包目录(307 条)
kubectl 基础56 条
工作负载36 条网络与服务55 条配置与存储54 条调度与资源52 条集群运维与排障54 条

kubectl set env 更新环境变量

直接给工作负载增删改环境变量,支持从 ConfigMap/Secret 批量注入;修改 Pod 模板后会触发一次滚动更新。

Kubernetes 速查云更新于 2026-10-12
用途更新工作负载容器环境变量(触发滚动更新)
语法kubectl set env <资源>/<名称> KEY=VALUE | KEY- | --from=configmap/<名>

常用示例

常用示例
kubectl set env deploy/web LOG_LEVEL=debug
kubectl set env deploy/web LOG_LEVEL-          # 删除变量
kubectl set env deploy/web --from=configmap/app-config
kubectl set env deploy/web --from=secret/db-pass --keys=DB_HOST,DB_PORT
--from 生成的变量会随 ConfigMap/Secret 键值在下次 Pod 创建时生效;运行中 Pod 不会自动更新。

易错点

  • 同时存在显式 env 与 envFrom 时,同名变量以显式 env 为准,排查「变量没生效」先看这个优先级
  • 删除变量用 KEY-(前缀匹配注意别误删同前缀的其他变量)

数据来源与参考

  • Kubernetes 官方文档 · kubectl set env
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌