PHP Docker映像中的Apache vs FPM之间的区别?

时间:2019-01-19 19:31:12

标签: php docker

PHP Docker hub处有7.3-apache-stretch7.3-fpm-stretch,有什么区别?哪个适合Web应用?

2 个答案:

答案 0 :(得分:1)

<products>变体仅包含PHP FPM,而7.3-fpm-stretch也包含Apache httpd服务器和配置为Apache模块的PHP。

如果要使用PHP作为Apache模块,则apache变体可能适合您。

如果您想使用例如nginx或仅想拥有FPM,则需要fpm变体。

答案 1 :(得分:1)

apache图像可以直接暴露,而fpm图像需要另一个Web服务器,然后再连接到fpm

透视一下-以下docker-compose几乎相同(第二个docker-compose需要添加虚拟主机,但我想您知道了)

php和Apache:

services:
   php:
       image: php:7.3-apache-stretch
       ports:
           - 80

带有fpm的php(需要apache / nginx才能工作):

services:
   php:
       image: php:7.3-fpm-stretch
   apache:
       image: apache
       ports:
           - 80
       links:
           - php

您会看到fpm版本为您提供了更多控制权-即使用其他Web服务器