如何在 Kubernetes 中取消设置环境变量?
How can I unset an environment variable in Kubernetes?
当为 Flower(Celery 监控服务)启动我的 Kubernetes 部署时,Kubernetes 在 Flower pod 中生成以下环境变量:
FLOWER_PORT=tcp://10.67.97.89:5555
FLOWER_PORT_5555_TCP=tcp://10.67.97.89:5555
FLOWER_PORT_5555_TCP_ADDR=10.67.97.89
FLOWER_PORT_5555_TCP_PORT=5555
FLOWER_PORT_5555_TCP_PROTO=tcp
FLOWER_SERVICE_HOST=10.67.97.89
FLOWER_SERVICE_PORT=5555
FLOWER_SERVICE_PORT_5555=5555
这是由于在部署前不久启动的 Flower 服务。但是,Flower 需要 FLOWER_PORT
中的整数并中止。
如何防止创建这些环境变量?
您无法阻止创建这些,但您可以通过在部署 pod 模板中明确设置它们来用您自己的值覆盖它们。所以,如果你即。期望 FLOWER_PORT 的默认值是 80
而不是 tcp://...
,您需要做的就是把
env:
- name: FLOWER_PORT
value: "80"
就是这样。
当为 Flower(Celery 监控服务)启动我的 Kubernetes 部署时,Kubernetes 在 Flower pod 中生成以下环境变量:
FLOWER_PORT=tcp://10.67.97.89:5555
FLOWER_PORT_5555_TCP=tcp://10.67.97.89:5555
FLOWER_PORT_5555_TCP_ADDR=10.67.97.89
FLOWER_PORT_5555_TCP_PORT=5555
FLOWER_PORT_5555_TCP_PROTO=tcp
FLOWER_SERVICE_HOST=10.67.97.89
FLOWER_SERVICE_PORT=5555
FLOWER_SERVICE_PORT_5555=5555
这是由于在部署前不久启动的 Flower 服务。但是,Flower 需要 FLOWER_PORT
中的整数并中止。
如何防止创建这些环境变量?
您无法阻止创建这些,但您可以通过在部署 pod 模板中明确设置它们来用您自己的值覆盖它们。所以,如果你即。期望 FLOWER_PORT 的默认值是 80
而不是 tcp://...
,您需要做的就是把
env:
- name: FLOWER_PORT
value: "80"
就是这样。