Je construis le Dockerfile pour le script python qui fonctionnera dans le système minikube windows 10 ci-dessous est mon Dockerfile
Création du docker à l'aide de la commande ci-dessous
docker build -t python-helloworld .
et le charger dans le démon docker minikube
docker save python-helloworld | (eval $(minikube docker-env) && docker load)
Fichier Docker
FROM python:3.7-alpine
#add user group and ass user to that group
RUN addgroup -S appgroup && adduser -S appuser -G appgroup
#creates work dir
WORKDIR /app
#copy python script to the container folder app
COPY helloworld.py /app/helloworld.py
#user is appuser
USER appuser
ENTRYPOINT ["python", "/app/helloworld.py"]
fichier pythoncronjob.yml (fichier de tâche cron)
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: python-helloworld
spec:
schedule: "*/1 * * * *"
jobTemplate:
spec:
backoffLimit: 5
template:
spec:
containers:
- name: python-helloworld
image: python-helloworld
imagePullPolicy: IfNotPresent
command: [/app/helloworld.py]
restartPolicy: OnFailure
Vous trouverez ci-dessous la commande pour exécuter ce travail Kubernetes
kubectl create -f pythoncronjob.yml
Mais obtenir le travail d'erreur ci-dessous ne fonctionne pas correctement, mais lorsque vous avez exécuté le Dockerfile seul, son travail fonctionne correctement
standard_init_linux.go: 211: le processus utilisateur exec a provoqué une "erreur de format exec"
la source
Deux autres raisons pourraient soulever ce problème si vous exécutez Docker sous Windows :
la source