一、如何确认容器是否使用root用户启动程序
需要用root用户运行Docker?
组织中,经常以Root用户运行Docker中的容器。但是你的工作负载真的需要root权限吗?显然很少。尽管如此,默认情况下,你的容器仍将以root用户身份运行。但这可能会带来严重的安全问题。实际上,如果以root用户运行容器内部的进程,就是以root用户身份运行主机的进程。这就为那些恶意访问主机的攻击者,提供了机会。
只需在常用的任何镜像上使用以下命令,你就可以自己查看它使用的用户身份,
步骤1:通过指令 docker ps 查看运行的容器的:
docker ps |grep centos_arm:v5
步骤2:通过指令 docker inspect --format ‘{ {.State.Pid }}’ 查看运行容器的:
docker inspect --format '{
{.State.Pid }}' 900d14baebc5
步骤3:通过指令 ps -p -o pid,user 查看容器进程关联的主机用户:
ps -p 351228 -o pid,user
步骤4:判断容器进程是否以 root 身份运行,如果是以root身份运行则不符合安全要求。
进入容器执行ps -ef