我正在尝试使用
kubectl apply -f dep.yml
来从现有部署中删除环境变量
当我运行命令时,我收到一条确认消息
deployment.apps/XXXX configured
但是当我再次检查部署时,环境变量仍然存在
我已验证我正在正确的命名空间中使用正确的部署名称。
此外,如果我更改其他参数,例如更改标签值 - 更改将被应用。仅删除字段似乎有问题。
知道可能是什么原因造成的吗?
提前致谢!
以下是您可以考虑的选项:
使用 set env 命令,它会从部署中删除现有变量。
kubectl 设置环境部署/DEPLOYMENT_NAME VARIABLE_NAME-
使用 kubectl patch 命令就地更新 API 对象。该子命令支持 JSON 补丁、JSON 合并补丁以删除现有的环境变量。
kubectl 补丁部署 DEPLOYMENT_NAME --type=json -p='[{"op": "remove", "path": "/spec/template/spec/containers/0/env/0"}]
要确认上述选项之一是否有效,您可以运行“kubectl描述部署部署名称”,您将看到环境正在更新/删除,但不在yaml中。