Docker apche + php7 环境

先获取 Apache2 和 php7.1-fpm 镜像

docker pull httpd
docker pull php:7.1-fpm

新建目录www 并允许 fpm 容器

docker run -d --rm --name fpm -v /root/docker/www:/var/www php:7.1-fpm

运行 Apache 容器

docker run -d -p 1272:80 --rm --name httpd -v /root/docker/www:/usr/local/apache2/htdocs/ httpd

复制Apache镜像的默认的 httpd.conf 文件修改

docker cp httpd:/usr/local/apache2/conf/httpd.conf /root/docker/conf

修改如下配置,注意这里的 172.17.0.3 的fpm IP,输入 docker network inspect bridge 查看 fpm 的ip,或者user-define 网路指定IP

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/usr/local/apache2/htdocs"
    ServerName localhost
    <Directory "/usr/local/apache2/htdocs">
      Options None
      Require all granted
    </Directory>
    ProxyRequests Off
    ProxyPassMatch ^/(.*\.php)$ fcgi://172.17.0.3:9000/var/www/$1
</VirtualHost>

然后停止Apache容器,再启动同时绑定 httpd.conf

docker run -d -p 1272:80  --name httpd -v /root/docker/www:/usr/local/apache2/htdocs/ -v /root/docker/conf/httpd.conf:/usr/local/apache2/conf/httpd.conf httpd

参考:https://www.cnblogs.com/tangxuliang/p/9328510.html

猜你喜欢

转载自blog.csdn.net/hjmnasdkl/article/details/84679332
今日推荐