kubectl 可以删除环境变量吗?

Kai*_*Chu 5 containers kubernetes kubectl

在这里,我可以通过 更新 envs kubectl patch,那么除了重新部署 a 之外,还有什么方法可以删除 envsdeployment.yaml吗?

$ kubectl patch deployment demo-deployment -p '{"spec":{"template":{"spec":{"containers":[{"name": "demo-deployment","env":[{"name":"foo","value":"bar"}]}]}}}}'
deployment.extensions "demo-deployment" patched
Run Code Online (Sandbox Code Playgroud)

我可以通过命令行删除 env "foo" 而不在整个部署中使用重新部署吗?

Ike*_*alu 11

这来晚了,但对于新手来说,您可以使用以下kubectl命令从部署中删除现有的 env 变量

kubectl set env deployment/DEPLOYMENT_NAME  VARIABLE_NAME-
Run Code Online (Sandbox Code Playgroud)

不要省略-末尾的连字符 ( )


P E*_*ram 1

如果您可以重新部署,请按照以下步骤操作

  1. 创建 configmap 并包含您的环境变量
  2. 从部署中的 configmap 加载环境变量
envFrom:
- configMapRef:
  name: app-config
Run Code Online (Sandbox Code Playgroud)
  1. 如果要删除环境变量,请从 configmap 中删除这些键值对
  2. 这将导致重新部署。您还可以从相应的部署中删除该 Pod