아래의 minikube Windows 10 시스템에서 실행되는 Python 스크립트 용 Dockerfile을 빌드 중입니다.
아래 명령을 사용하여 도커 빌드
docker build -t python-helloworld .
minikube docker 악마에로드
docker save python-helloworld | (eval $(minikube docker-env) && docker load)
도커 파일
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"]
pythoncronjob.yml 파일 (크론 작업 파일)
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
다음은이 Kubernetes 작업을 실행하는 명령입니다.
kubectl create -f pythoncronjob.yml
그러나 아래 오류 작업을 얻는 것은 제대로 수행되지 않지만 Dockerfile 만 단독으로 실행하면 제대로 작동합니다.
standard_init_linux.go : 211 : exec 사용자 프로세스로 인해 "exec 형식 오류"가 발생했습니다