
在docker环境下运行PHP
实践世界上最好的语言PHP,打包部署到docker。
Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。
PHP(全称:Hypertext Preprocessor,即: 超文本预处理器")是一种通用开源脚本语言。
1.部署PHP环境
1.1:拉取PHP
2.1:创建/etc/nginx/www 文件夹用于挂载PHP工作目录
3.1:运行PHP容器
2:部署nginx环境
2.1:拉取nginx镜像
2.2运行容器
2.3:第二步运行的Nginx的配置文件是在容器内部的,不方便修改,所以我们可以先把容器内的配置文件复制到宿主机
2.4:复制容器内的配置文件到宿主机,或者仅复制conf.d文件夹内的配置文件,运行时挂载相应文件即可
2.5:停止Nginx容器并删除
2.6:重新运行容器,并挂载我们在第三步复制出来的配置文件目录
2.7:添加测试文件
访问localhost:80(我是部署在虚拟机,8080是宿主机和docker虚拟机端口80的映射端口)
2.8:修改nginx配置
如下图
fastcgi_pass myphp-fpm:9000; #将请求代理到容器myphp-fpm到9000端口
这个命令是指定将http代理到哪个fastcgi服务端接口。fastcgi_pass后面是填写fastcgi服务端地址的,这个地址可以是域地址,也可以是Uninx-域套接字。
fastcgi_param SCRIPT_FILENAME $/www/$fastcgi_script_name;
脚本文件请求的路径 (/www/ 映射宿主机挂载的/etc/nginx/www目录,这里是个大坑)
2.9:创建index.php文件测试结果
内容如下
重启nginx容器使配置生效
如无意外访问localhost:80/index.php 可看到如下界面