如何在 kubernetes 中授予对共享卷的完全权限
How to give full permissions to a shared volume in kubernetes
我有一个与主机共享卷的容器。我想给它一个完整的权限。目前是:
ls -l
drwxr-xr-x 8 user user 4096 Aug 9 04:47 Data
但我希望它是:
ls -l
drwxrwxrwx 8 user user 4096 Aug 9 04:47 Data
我有以下部署文件:
----
----
spec:
containers:
- name: logger
image: logger_image
volumeMounts:
- mountPath: /Data
name: Data-files
securityContext:
privileged: true
volumes:
- name: Data-files
hostPath:
path: /home/user/Documents/Data
----
----
我什至将其设置为 privileged
,但这些卷仍然没有完全权限。我应该在部署文件中添加什么以使卷具有完整权限?
谢谢
您对 /home/user/
或 /home/user/Documents/
文件夹的权限不允许进程的所有者(logger_image)访问文件夹和写入。
尝试创建 /Data
(在您的根目录上)并设置适当的权限。
我解决了这个问题,方法是在 Dockerfile
本身中提及适当的命令以授予对该目录的完全权限。
在 dockerfile 中:
RUN mkdir -p /Data
RUN chmod 777 -R Data/
后来使用了相同的 kubernetes 部署文件,它在完全权限下运行良好。
谢谢
我有一个与主机共享卷的容器。我想给它一个完整的权限。目前是:
ls -l
drwxr-xr-x 8 user user 4096 Aug 9 04:47 Data
但我希望它是:
ls -l
drwxrwxrwx 8 user user 4096 Aug 9 04:47 Data
我有以下部署文件:
----
----
spec:
containers:
- name: logger
image: logger_image
volumeMounts:
- mountPath: /Data
name: Data-files
securityContext:
privileged: true
volumes:
- name: Data-files
hostPath:
path: /home/user/Documents/Data
----
----
我什至将其设置为 privileged
,但这些卷仍然没有完全权限。我应该在部署文件中添加什么以使卷具有完整权限?
谢谢
您对 /home/user/
或 /home/user/Documents/
文件夹的权限不允许进程的所有者(logger_image)访问文件夹和写入。
尝试创建 /Data
(在您的根目录上)并设置适当的权限。
我解决了这个问题,方法是在 Dockerfile
本身中提及适当的命令以授予对该目录的完全权限。
在 dockerfile 中:
RUN mkdir -p /Data
RUN chmod 777 -R Data/
后来使用了相同的 kubernetes 部署文件,它在完全权限下运行良好。
谢谢