Security 限制对mounted/var/run/docker.sock的访问

Security 限制对mounted/var/run/docker.sock的访问,security,docker,Security,Docker,我目前正在使用docker compose和docker开发一个webapp。目前,一个容器中有一个前端Nginx反向代理服务器,另一个容器中有一个Rails应用程序 有时,Rails应用程序需要对Nginx配置文件进行更改。我通过将配置目录作为共享卷装载到两个容器中实现了这一点 但是,要在Rails应用程序修改后强制Nginx重新加载其配置文件,它需要向Nginx进程发送一个HUP信号。目前,我正在通过将主机的/var/run/docker.sock装载到Rails应用程序容器中,并使用请求主

我目前正在使用docker compose和docker开发一个webapp。目前,一个容器中有一个前端Nginx反向代理服务器,另一个容器中有一个Rails应用程序

有时,Rails应用程序需要对Nginx配置文件进行更改。我通过将配置目录作为共享卷装载到两个容器中实现了这一点

但是,要在Rails应用程序修改后强制Nginx重新加载其配置文件,它需要向Nginx进程发送一个HUP信号。目前,我正在通过将主机的
/var/run/docker.sock
装载到Rails应用程序容器中,并使用请求主机docker将信号发送到正确的容器来实现这一点

这很好,但现在我很好。如果Rails容器受损,则攻击者将拥有对主机的root访问权限

我考虑创建另一个容器,该容器的唯一工作是代理对套接字的访问,并向Rails主应用程序公开有限的API。但随后我们遇到了同样的问题,即当经纪人也受到损害时会发生什么。不仅如此,还有更简单的方法吗

我搜索了一些解决方案来限制可以在
/var/run/docker.sock
上调用哪些API,但没有找到任何解决方案

有人有什么想法吗?也许还有其他方法可以在不必通过Docker API的情况下重新加载Nginx配置文件