K8S中容器挂载数据卷后权限问题
问题原因
通常情况下,每个应用,会对该应用的应用文件所在文件夹属组或权限有要求,如果权限或者属组不对,就会导致此问题。
数据卷挂载后,该路径会继承数据卷目录的属组和权限,通常为:drwxr-xr-x 12 root root
解决方法
此处通过k8s中的initcontainers容器,来解决此问题。
initContainers:
- args:
- -c
- chmod 777 <mountPoint>
command:
- /bin/sh
image: debian
imagePullPolicy: IfNotPresent
name: <containerName>Init
securityContext:
privileged: true #建议开启特权模式
volumeMounts:
- mountPath: <mountPoint>
name: data