无论我为PVC添加的安装路径是什么,它都会创建lost + found文件夹并删除所有其他内容。
我正在尝试使用PVC设置部署
FROM python:3.5 AS python-build
ADD . /test
WORKDIR /test
CMD [ "python3", "./run.py" ]
apiVersion: apps/v1beta2
kind: Deployment
metadata:
name: test-core
labels:
app: test-core
spec:
selector:
matchLabels:
app: test-core
tier: frontend
strategy:
type: RollingUpdate
template:
metadata:
labels:
app: test-core
tier: frontend
spec:
containers:
- image: <My image>
securityContext:
privileged: true
runAsUser: 1000
resources:
requests:
memory: "128Mi"
cpu: .05
limits:
memory: "256Mi"
cpu: .10
name: test-core
ports:
- containerPort: 9595
name: http
- containerPort: 443
name: https
readinessProbe:
httpGet:
path: /
port: 9595
initialDelaySeconds: 5
periodSeconds: 3
timeoutSeconds: 3
successThreshold: 1
failureThreshold: 4
envFrom:
- secretRef:
name: test-secret
- configMapRef:
name: test-new-configmap
volumeMounts:
- name: core-data
mountPath: /test
imagePullPolicy: Always
volumes:
- name: core-data
persistentVolumeClaim:
claimName: core-claim
当我从kubernetes应用此文件时,日志中出现错误,无法找到文件run.py,这意味着PVC空了。
无论添加什么装载路径,它都会创建lsot + found文件夹并删除所有其他内容。
谢谢
答案 0 :(得分:1)
根据Dockerfile
,当您运行docker build -t <imagename> .
时,它将把当前目录中的所有文件复制到容器映像中。当您启动此容器时,它将寻找run.py
。
如果其中一个文件实际上是run.py
,则说明您的部署yaml文件不正确,因为您将另一个PV装载到该目录,该目录将覆盖您之前复制的文件,并且该文件赢得了无法找到run.py
希望有帮助。