我有云提供商提供的存储。它能够通过 PVC 将存储安装到容器上。
有没有办法指定磁盘的子路径然后挂载到容器的特定路径。
我尝试了如下的自定义值,但它不起作用。
Persistence:
Enabled: true
## A manually managed Persistent Volume and Claim
## Requires Persistence.Enabled: true
## If defined, PVC must be created manually before volume will be bound
ExistingClaim: ci-jenkins-data
## jenkins data Persistent Volume Storage Class
## If defined, storageClassName: <storageClass>
## If set to "-", storageClassName: "", which disables dynamic provisioning
## If undefined (the default) or set to null, no storageClassName spec is
## set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack)
##
# StorageClass: "-"
Annotations: {}
AccessMode: ReadWriteOnce
Size: 100Gi
volumes:
- name: ci-jenkins-data
mountPath: /var/jenkins_home
subPath: /volume/jenkins
Run Code Online (Sandbox Code Playgroud)
由于一个 PVC 只能声明一次,我假设您想在单个 pod 中的卷中挂载子文件夹。我在volumeMounts部分中指定了子路径,如下所示。
apiVersion: v1
kind: Pod
metadata:
name: my-lamp-site
spec:
containers:
- name: mysql
image: mysql
env:
- name: MYSQL_ROOT_PASSWORD
value: "rootpasswd"
volumeMounts:
- mountPath: /var/lib/mysql
name: site-data
subPath: mysql
- name: php
image: php:7.0-apache
volumeMounts:
- mountPath: /var/www/html
name: site-data
subPath: html
volumes:
- name: site-data
persistentVolumeClaim:
claimName: my-lamp-site-data
Run Code Online (Sandbox Code Playgroud)
上面的代码片段是从https://kubernetes.io/docs/concepts/storage/volumes/#using-subpath复制的
我确信您可能已经尝试过 hostpath,但是 1.9 原始块卷支持可能会对您的情况有所帮助。
让我知道这是否有帮助。
问候苏达卡
| 归档时间: |
|
| 查看次数: |
13887 次 |
| 最近记录: |