我尝试运行最新版本的 debian 和 alpine,但似乎以 root 用户身份运行。
我期待 echo $USER
如果返回为空,则不应返回 root;然后我需要使用命令 whoami
进行验证如果这也返回 root,我们已经以 root 模式登录到 docker 容器,这可能会导致漏洞。
最佳答案
处理这个问题的常用方法是在你的 Dockerfile
中覆盖它。 (你可以做 docker run --user
,但这可能会让程序感到困惑,因为例如不会有主目录设置)。
FROM ubuntu
RUN useradd --create-home appuser
WORKDIR /home/appuser
USER appuser
更多详细信息以及您可以采取的一些其他措施来保护您的容器:https://pythonspeed.com/articles/root-capabilities-docker-security/
关于docker - 无根 docker 镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59840450/