我正在尝试创建一个 Kubernetes CronJob 来每分钟运行一个应用程序。
一个先决条件是我需要将我的应用程序代码放到 CronJob 中运行的容器上。我认为最好的方法是使用持久卷,pvclaim,然后定义卷并将其安装到容器中。我已经使用在 Pod 中运行的容器成功地做到了这一点,但在 CronJob 中似乎是不可能的?这是我尝试的配置:
apiVersion: batch/v2alpha1
kind: CronJob
metadata:
name: update_db
spec:
volumes:
- name: application-code
persistentVolumeClaim:
claimName: application-code-pv-claim
schedule: "*/1 * * * *"
jobTemplate:
spec:
template:
spec:
containers:
- name: update-fingerprints
image: python:3.6.2-slim
command: ["/bin/bash"]
args: ["-c", "python /client/test.py"]
restartPolicy: OnFailure
对应的错误:
错误:验证“cron-applications.yaml”时出错:验证数据时出错:发现 v2alpha1.CronJobSpec 的无效字段卷;如果您选择忽略这些错误,请使用 --validate=false 关闭验证
我找不到任何资源表明这是可能的。那么,如果不可能,如何解决将应用程序代码放入正在运行的 CronJob 的问题?