gpt4 book ai didi

kubernetes - 如何将 env 值用于 Job?

转载 作者:行者123 更新时间:2023-12-05 01:08:14 24 4
gpt4 key购买 nike

您好,我正在尝试将 env 值传递给作业以执行此操作,我使用以下 kubernetes 模板:

apiVersion: batch/v1
kind: Job
metadata:
name: socksdownloader
spec:
template:
spec:
containers:
- name: socksdownloader
image: socksdownloader:0.0.1
# env:
# - name: REDIS_HOST
# value: redis
# - name: REDIS_PORT
# value: 6379
# - name: REDIS_DB
# value: 0
# - name: REDIS_KEY
# value: "SOCK:"
command: ["python", "src/main.py"]
restartPolicy: Never
backoffLimit: 4

如果我取消注释 yml 的 env 条目,我会收到以下错误:

The request is invalid: patch: Invalid value:"map[metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"batch/v1","kind":"Job","metadata":{"annotations":{},"name":"socksdownloader","namespace":"default"},"spec":{"backoffLimit":4,"template":{"spec":{"containers":[{"command":["python","src/main.py"],"env":[{"name":"REDIS_HOST","value":"redis"},{"name":"REDIS_PORT","value":6379},{"name":"REDIS_DB","value":0},{"name":"REDIS_KEY","value":"SOCK:"}],"image":"socksdownloader:0.0.1","name":"socksdownloader"}],"restartPolicy":"Never"}}}}\n]]spec:map[template:map[spec:map[]]]]": cannot convert int64 to string

问题是我如何将这些值传递给 Job 以便可以连接到 redis。

谢谢

最佳答案

Kubernetes' envvar规范要求将环境变量值强制转换为字符串,因此整数需要通过引号传递。

在整数值中使用引号:

- name: REDIS_PORT
value: "6379"
- name: REDIS_DB
value: "0"

关于kubernetes - 如何将 env 值用于 Job?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66289896/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com