Rus*_*mur 4 configuration file kubernetes configmap
在 Kubernetes 中是否可以将 ConfigMap 中的文件挂载到已有其他文件的目录中?例如
基础镜像文件系统:
/app/
main/
main.py
test.py
Run Code Online (Sandbox Code Playgroud)
ConfigMap 包含一个文件 Mounted.py,该文件应与 main.py 和 test.py 一起安装在 /app/main/ 中。
部署后所需的文件系统:
/app/
main/
main.py
test.py
mounted.py
Run Code Online (Sandbox Code Playgroud)
到目前为止我所看到的是 ConfigMap 被安装到一个新目录,所以我最接近的是这样的:
/app/
main/
main.py
test.py
mounted/
mounted.py
Run Code Online (Sandbox Code Playgroud)
如果我将 ConfigMap 安装到 /app/main,那么它会破坏基础映像中的现有文件。例如
/app/
main/
mounted.py
Run Code Online (Sandbox Code Playgroud)
有没有像这样注入单个文件的好方法?(实际上,在我的实际用例中是多个文件。)我不希望为 ConfigMap 注入的所有内容设置单独的目录,因为它偏离了标准程序架构。
使用subPath:
volumeMounts:
- name: config
mountPath: /app/main/mounted.py
subPath: mounted.py
Run Code Online (Sandbox Code Playgroud)
显示mountPath它应该安装的位置,并subPath指向卷内的一个条目。
请注意限制:使用 subPath 时,configMap 更新不会反映在您的文件中。详细信息请参见官方文档。