Security 限制对mounted/var/run/docker.sock的访问
我目前正在使用docker compose和docker开发一个webapp。目前,一个容器中有一个前端Nginx反向代理服务器,另一个容器中有一个Rails应用程序 有时,Rails应用程序需要对Nginx配置文件进行更改。我通过将配置目录作为共享卷装载到两个容器中实现了这一点 但是,要在Rails应用程序修改后强制Nginx重新加载其配置文件,它需要向Nginx进程发送一个HUP信号。目前,我正在通过将主机的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应用程序容器中,并使用请求主
/var/run/docker.sock
装载到Rails应用程序容器中,并使用请求主机docker将信号发送到正确的容器来实现这一点
这很好,但现在我很好。如果Rails容器受损,则攻击者将拥有对主机的root访问权限
我考虑创建另一个容器,该容器的唯一工作是代理对套接字的访问,并向Rails主应用程序公开有限的API。但随后我们遇到了同样的问题,即当经纪人也受到损害时会发生什么。不仅如此,还有更简单的方法吗
我搜索了一些解决方案来限制可以在/var/run/docker.sock
上调用哪些API,但没有找到任何解决方案
有人有什么想法吗?也许还有其他方法可以在不必通过Docker API的情况下重新加载Nginx配置文件