我正在尝试使用git-sync将数据从gitlab存储库写入到一个持久卷,然后将该数据拉到另一个pod (trim_load)中并执行作业。以下是我设置的清单。我是新手,并且在本地开发,我可以使用我能得到的所有方向!
我收到一个错误,该目录不存在,但它在我的本地计算机上存在,而不是在我正在使用的kind集群上。如何在kind集群上创建目录?
apiVersion: v1
kind: PersistentVolume
metadata:
name: dbt-pv
spec:
capacity:
storage: 2Gi
volumeMode: Filesystem
accessModes:
- ReadWriteMany
persistentVolumeReclaimPolicy: Retain
storageClassName: local-storage
local:
path: /Users/my_user/k8s/pv1
nodeAffinity:
required:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/hostname
operator: In
values:
- kind-control-planeapiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: dbt-pvc
spec:
storageClassName: local-storage
accessModes:
- ReadWriteMany
volumeName: dbt-pv
resources:
requests:
storage: 1GiapiVersion: v1
kind: Pod
metadata:
name: gitsync-sidecar
spec:
containers:
- name: git-sync
# This container pulls git data and publishes it into volume
# "content-from-git". In that volume you will find a symlink
# "current" (see -dest below) which points to a checked-out copy of
# the master branch (see -branch) of the repo (see -repo).
# NOTE: git-sync already runs as non-root.
image: k8s.gcr.io/git-sync/git-sync:v3.3.4
args:
- --repo= <the git repo I wanna copy HTTPS link>
- --branch=master
- --depth=1
- --period=60
- --link=current
- --root=/git # I don't know what this means
volumeMounts:
- name: dbt-pv
mountPath: /git # I don't know what this means
volumes:
- name: dbt-pv
persistentVolumeClaim:
claimName: dbt-pvcapiVersion: v1
kind: Pod
metadata:
name: trim-pod
spec:
containers:
- name: trim-pod-cont
image: <my docker container to run the code>
volumeMounts:
- name: dbt-pv
mountPath: /tmp/dbt
volumes:
- name: dbt-pv
persistentVolumeClaim:
claimName: dbt-pvc发布于 2021-09-07 14:19:06
我不熟悉kind,但从我在他们网站上收集的信息来看,它的工作原理就像minikube。这意味着你的集群是在一个容器内部。
本地计算机上的文件夹已存在,但您的卷正在主机内查找文件夹,主机是运行集群的容器。
您必须在集群容器中打开一个shell并在其中创建文件夹。
如果你想在你的本地机器上访问这个文件夹,那么你必须在你的种类集群中挂载你的本地文件夹。
https://stackoverflow.com/questions/69048829
复制相似问题