我正在尝试通过Kubernetes CronJob计划Python脚本,但是由于某些原因,我无法理解该怎么做。我可以运行像echo Hello World
这样的简单脚本,但这不是我想要的
我尝试使用此规范:
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: test
spec:
schedule: "*/1 * * * *"
concurrencyPolicy: "Forbid"
failedJobsHistoryLimit: 10
startingDeadlineSeconds: 600 # 10 min
jobTemplate:
spec:
backoffLimit: 0
activeDeadlineSeconds: 3300 # 55min
template:
spec:
containers:
- name: hello
image: python:3.6-slim
command: ["python"]
args: ["./main.py"]
restartPolicy: Never
但是后来我无法运行它,因为未找到main.py,我知道不支持相对路径,因此我对该路径进行了硬编码,但后来却找不到自己的主目录,我尝试做{{ 1}},在那儿我的文件夹名称不可见,所以我无法访问我的项目存储库。
最初,我打算运行可以执行以下操作的bash脚本:
ls /home/
的安装要求但是我不确定如何使用kubernetes做到这一点,这让我感到困惑
简而言之,我希望能够运行k8s CronJob,该软件可以先安装需求然后运行它来运行Python脚本
答案 0 :(得分:0)
启动脚本./main.py在哪里?它是否存在于图像中。 您需要使用python:3.6-slim作为基础映像来构建新映像,并将python脚本添加到PATH。那么您将可以从k8s CronJob中运行它