我尝试在kubernetes上挂载非root用户(xxxuser)的文件夹,并使用hostPath进行挂载。但是无论何时启动容器,都将使用用户(1001)而不是xxxuser进行安装。它总是从用户(1001)开始。如何使用xxxuser挂载此文件夹?
卷的类型很多,但是我使用hostPath。开始之前;我使用chown和chgrp命令更改文件夹用户和组。接着;将该文件夹安装为卷。容器启动,我检查了文件夹的用户,但它始终是用户(1001)。例如;
drwxr-x ---。 2 1001 1001 70 5月3日14:15 configutil /
volumeMounts:
- name: configs
mountPath: /opt/KOBIL/SSMS/home/configutil
volumes:
- name: configs
hostPath:
path: /home/ssmsuser/configutil
type: Directory
drwxr-x ---。 2 xxxuser xxxuser 70 5月3日14:15 configutil /
答案 0 :(得分:1)
您可以使用以下语法指定所需的安装卷所有者:
spec:
securityContext:
fsGroup: 2000
答案 1 :(得分:0)
我尝试您提出的建议,但我的问题仍然存在。我将以下行添加到我的yaml文件中:
spec:
securityContext:
runAsUser: 999
runAsGroup: 999
fsGroup: 999
我使用999,因为我在Dockerfile中使用了999。例如;
RUN groupadd -g 999 ssmsuser && \
useradd -r -u 999 -g ssmsuser ssmsuser
USER ssmsuser