【发布时间】:2019-10-05 05:59:45
【问题描述】:
我有一个 Pod 或 Job yaml 规范文件(我可以编辑它),我想从我的本地机器启动它(例如,使用 kubectl create -f my_spec.yaml)
规范声明了一个卷挂载。该卷中会有一个文件,我想将其用作环境变量的值。
我想使卷文件内容最终出现在环境变量中(无需我通过某种方式将文件“下载”到我的本地计算机并将其插入到规范中来跳过箍)。
附:如果您可以控制command 的container,那么很明显如何做到这一点。但是在启动任意图像的情况下,我无法控制command 属性,因为我不知道。
apiVersion: batch/v1
kind: Job
metadata:
generateName: puzzle
spec:
template:
spec:
containers:
- name: main
image: arbitrary-image
env:
- name: my_var
valueFrom: <Contents of /mnt/my_var_value.txt>
volumeMounts:
- name: my-vol
path: /mnt
volumes:
- name: my-vol
persistentVolumeClaim:
claimName: my-pvc
【问题讨论】:
-
您是否考虑过接受“元作业”的自定义控制器,发现该内容,然后使用它从 PVC 中发现的信息创建 真实
Job?这将与您所说的仅自动化的步骤完全相同
标签: kubernetes volumes