将nginx和php-fpm容器链接在一起,以便在docker prod

时间:2018-02-27 13:16:26

标签: php apache docker nginx docker-compose

对于我的symfony项目,我使用的是经典的nginx / mysql / php-fpm图像组合。 对于两者(fpm和nginx),我使用本地安装到docker容器来使源代码可用。所以这很慢,但可以使用docker的nfs扩展。

在prod环境中,我准备图像,以便将本地src代码复制到php-fpm图像,然后在nginx容器的docker compose文件中创建一个命名卷。所以我可以连接php-fpm和nginx,使它们使用相同的php文件。

多数民众赞成在工作。

我的问题是,它仍然很慢获得网站响应,虽然我认为原因是我本地计算机上的文件挂载速度慢。但仍然在原生的linux生产环境中,它仍然很慢。并且部分慢于在我的本地开发环境中使用docker在mac下!

例如: - 在我的本地计算机上加载一个显示192个实体的symfony页面,使用mount和nfs mount扩展时间为12秒。

  • 在previouse原生安装的prod环境中没有docker(手动安装所有中间件),相同的视图需要1-2秒才能渲染。

  • 现在在使用docker的prod环境中加载此视图需要16(!)秒。

如何更快地运行我的系统?

问题仍然是nginx和php-fpm之间的挂载?或者这是多个docker容器通信的一般问题?

一个想法是根本不使用fpm / nginx组合,而是使用php模块进行apache。因此只需要一个容器。我们并不特别关注nginx或apache。

另一个问题:是否真的需要在两个图像(php / nginx)中都有源代码?或者我可以保存

更新

我卸载了xdebug,节省了1-2秒,但它仍然在10秒左右......这太慢了!

为了上演它的罚款,但后来生产它非常糟糕......

0 个答案:

没有答案