在我的 Dockerfile 中,我创建了一个非 root 用户并使用以下内容设置二进制和非 root 用户工作区的权限:
RUN groupadd --gid 1000 non-root-user \
&& useradd -g 1000 non-root-user \
&& chown -R non-root-user:non-root-user /var/workspace/non-root-user \
&& chmod -R 550 /var/workspace/non-root-user \ # location of binary, sym-link to /run
USER non-root-user
当我启动容器并运行试图读取 config.json 文件的二进制文件时,二进制文件退出时说
non-root-user@4bd15417ffdc:/$ ./run start
Error: Permission denied (os error 13)
如上所述,二进制文件有 550。 在包含 config.json 文件的卷中,config.json 具有:
-rw-rw-rw- 1 non-root-user non-root-user 1464 Feb 27 18:49 config.json
但是二进制文件无法访问它。 我试过:
:Z
在这里变得绝望和用尽想法。任何帮助将不胜感激!