Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Security 如何正确写入Dockerfile,并在主机非根用户/uid下使用docker compose(最佳实践)?_Security_Docker - Fatal编程技术网

Security 如何正确写入Dockerfile,并在主机非根用户/uid下使用docker compose(最佳实践)?

Security 如何正确写入Dockerfile,并在主机非根用户/uid下使用docker compose(最佳实践)?,security,docker,Security,Docker,我不太确定在使用docker时如何应用安全最佳实践。每个流行的指南似乎都在使用root 有人可以在 1.如何编写Dockerfile(针对非root用户),例如busybox 2、在docker compose文件中使用docker文件 3.使用非root用户/uid运行docker compose 我真的很感激。谢谢。有一些不同的方法可以实现这一点 在Dockerfile中,创建一个用户并以该用户的身份运行应用程序。 这是首选模式 FROM <BASE> RUN groupadd

我不太确定在使用docker时如何应用安全最佳实践。每个流行的指南似乎都在使用root

有人可以在
1.如何编写Dockerfile(针对非root用户),例如busybox
2、在docker compose文件中使用docker文件
3.使用非root用户/uid运行docker compose


我真的很感激。谢谢。

有一些不同的方法可以实现这一点

在Dockerfile中,创建一个用户并以该用户的身份运行应用程序。 这是首选模式

FROM <BASE>
RUN groupadd -g 1000 myuser && \
    useradd -r -u 1000 -g myuser myuser
USER myuser
...
文件:

使用userns重新映射 下面讨论此模式的详细信息:

docker run --user <uid>:<pid> ...