如何配置docker在单独的容器中使用apache和php

如何配置docker在单独的容器中使用apache和php,php,apache,docker,dockerfile,docker-compose,Php,Apache,Docker,Dockerfile,Docker Compose,我需要使用docker设置特定的LAMP环境,包括: debian挤压6.0.10 apache2 php5.6 mysql5.5 将应用程序代码托管在带有debian+apache的基本映像上,我想知道是否可以使用php容器代替默认的php服务器安装在debian容器(即5.3)上,就像使用mysql容器一样 这是一个小图片,可以更好地解释这个想法 可能吗 谢谢 更新 经过一些研究,我认为这是不可能的,除非您将php配置为cgi模块,否则即使是模块化配置也不值得 您应该具备系统管理员技能

我需要使用docker设置特定的LAMP环境,包括:

  • debian挤压
    6.0.10
  • apache
    2
  • php
    5.6
  • mysql
    5.5
将应用程序代码托管在带有
debian+apache
的基本映像上,我想知道是否可以使用php容器代替默认的php服务器安装在debian容器(即
5.3
)上,就像使用mysql容器一样

这是一个小图片,可以更好地解释这个想法

可能吗

谢谢

更新 经过一些研究,我认为这是不可能的,除非您将php配置为cgi模块,否则即使是模块化配置也不值得


您应该具备系统管理员技能来正确管理它,但是生产服务器永远不能以相同的方式配置,特别是公共托管提供商使用的方式。

据我所知,您希望从两个php容器访问MySQL实例

这是绝对可能的

您的设置如下所示:

docker run --name db mysql
docker run --link db php:5.4
docker run --link db php:5.6
这将为您提供一个mysql容器和两个php容器及其各自的版本


这回答了你的问题吗?

我目前正在做类似的工作,让你可以自由选择不同的PHP版本(通过PHP fpm预先配置),以及不同的MySQL和Apache/Nginx版本

只需将配置变量设置为特定版本,然后启动容器即可选择它们

您可以在此处查看该项目:

你可能会对这一切是如何联系起来的有一些想法。
撰写文件在这里:

nope,正如标题所说,问题是将apache配置为使用
PHP5.*
container服务,而不是
debian+apache
container php service.ah,所以您只希望覆盖现有apache中的php部分?是的,如果可以使用php docker容器为单独的project LAMP环境提供单独的php版本。我相信这是可能的,使用docker compose和两个单独的apache,就像您描述的图像一样,每个都有自己的php安装,然后将容器链接到同一个数据库。现在已经很晚了,但希望能够帮助其他人,使用一个带有php fpm的容器和另一个带有apache的容器,将它们放在docker compose中的同一网络上,在apache中复制一个加载代理和fcgi模块的virtualhost文件,将其配置到docker compose文件中加载的网络上