我有一个 Web 服务器主机(Linux 上的 Apache),它运行许多虚拟主机,这些虚拟主机使用“chroot”提供 CGI 和 FastCGI,以将进程彼此分离。出于多种原因,我正在考虑用 Linux 容器替换每个 chroot 环境。令人惊讶的是,我几乎没有找到关于这个想法的任何信息!只有我有这个想法吗?这是一个坏主意吗?(用户可以退出容器吗?)有人有兴趣与我分享他对此的想法(或链接)吗?
不幸的是,容器只能用于 CGI 和 FastCGI,因为进程/线程(在本例中为 Apache)无法进入容器,完成工作后离开。他必须在此阶段退出,对吗?或者有什么诀窍?
答案1
如果我没记错的话,你的想法的结果是 apache 是一种容器守护进程。这有什么好处呢?Apache 最擅长调度网络请求。
由于容器中的进程的 IO 只能通过虚拟网络访问,因此必须连接到容器中的网络接口。因此 cgi/fastcgi 无法工作,因为它们的接口是进程和管道。
如果容器内的(定制的)Apache 对于您来说太“大”,也许netcat
可以这样做?
在网上搜索“微服务”方法!