[有时,在由Rancher 2.3.5单节点安装管理的8节点Kubernetes 1.17.2集群中,我偶然发现了这个奇怪的错误,它实际上说文件夹不在那儿,但是...它是!该错误的首次出现实际上实际上阻止了受影响的容器的启动,这与我努力使被视为标准存储提供程序的3个工作节点中的GlusterFS卷有关!所以我尝试了torchbox / k8s-hostpath-provisioner,还尝试了rancher.io/local-path;但是,有时会因新配置的特定服务而发生关于配置目录未正确配置的怪异错误,因此,我决定放弃它们,并继续前进。现在我真的停了下来,因为没有很多替代K8s部署的邮件服务器,例如tomav / docker-mailserver,但是它仍然拒绝开始抛出此CreateContainerConfigError,即使我已经完全删除并修补了它它的YAML清单是使用K8s标准的“ hostPath” volumeMount而不是我的测试提供者:
从此:
volumes:
- name: data
persistentVolumeClaim:
claimName: mail-storage
至此:
volumes:
- name: data
hostPath:
path: /mnt/gvol2/docker-mailserver
type: ""
我已经从另一个示例服务改编了最后的代码,该示例服务与Rancher“绑定安装”一起用作GUI中的卷; docker-mailserver在Rancher GUI中看起来完全一样,看不到任何错误,因此卷定义似乎还可以。为什么我得到这个“ CreateContainerConfigError”,所以呢?任何帮助将不胜感激!
type: "DirectoryOrCreate"
解决了这个谜!显然,当K8s本身不是直接创建的时,它实际上并不会真正进入stat()目录!