获取此错误。Error: failed to prepare subPath for volumeMount "solr-collection-config" of container "upload-config-container"
使用Kubernetes2011年10月11日
- name: upload-config-container
image: solr:7.4.0-alpine
imagePullPolicy: Always
resources:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "256Mi"
cpu: "200m"
volumeMounts:
- name: solr-collection-config
mountPath: /tell/carbon/conf
subPath: conf
solr-collection-config
是表示配置Map的卷
volumes:
- name: solr-collection-config
configMap:
name: solr-collection-resources
items:
- key: stopwords_en.txt
path: "conf/lang/stopwords_en.txt"
- key: _rest_managed.json
path: "conf/_rest_managed.json"
- key: currency.xml
path: "conf/currency.xml"
- key: protwords.txt
path: "conf/protwords.txt"
- key: schema.xml
path: "conf/schema.xml"
- key: solrconfig.xml
path: "conf/solrconfig.xml"
- key: stopwords.txt
path: "conf/stopwords.txt"
- key: synonyms.txt
path: "conf/synonyms.txt"
restartPolicy: Never
非常感谢您的帮助。谢谢
1条答案
按热度按时间kqqjbcuj1#
如果不使用
subPath
会发生什么?configMap中的所有键都将安装在目录
/tell/carbon/conf
中。这意味着,每个键都将是此目录下的一个单独文件。现在,
subPath
做什么呢?在您的示例中,意味着,configMap中的密钥
conf
将作为conf
文件装载到/tell/carbon
目录下。但是,你没有这个键。所以得到这个错误。
错误:无法为容器“上载配置容器”的卷装载“solr-collection-config”准备子路径
现在,你可以这样做
这意味着,来自configMap的
stopwords_en.txt
值将作为conf
文件装载在/tell/carbon
下。最后一句话,此
subPath
实际上是卷的路径,数据来自卷。在您的情况下,subPath
应该是configMap中的一个键