Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。今天为大家分享一下使用 Docker 搭建 PHP 运行环境的完整步骤,供有此需求的小伙伴参考。
具体步骤
拉取 php-fpm 镜像,并启动 php-fpm 容器。然后配置 Nginx 反向代理,并启动 Nginx (容器或程序)。
第一步:拉取php-fpm镜像:
- docker pull php:7.4-fpm
第二步:启动php-fpm容器
- docker run -d -p 9000:9000 --name php-fpm --restart always -v /home/nginx/html:/www -d php:7.4-fpm
第三步:将容器中的www目录复制到宿主机
- docker cp php-fpm:/www /home/nginx/html
第四步:重启php-fpm容器
- docker restart php-fpm
第五步:修改Nginx配置文件
- server {
- listen 80;
- server_name localhost;
- location / {
- root /usr/share/nginx/html;
- index index.html index.htm index.php;
- }
- error_page 500 502 503 504 /50x.html;
- location = /50x.html {
- root /usr/share/nginx/html;
- }
- location ~ \.php$ {
- fastcgi_pass php-fpm:9000;
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME /www/$fastcgi_script_name;
- include fastcgi_params;
- }
- }
$fastcgi_script_name前面加/www/,/www是容器中存放php文件的目录,这个很重要。
第六步:启动Nginx容器并关联PHP
- docker run --name nginx -p 8000:80 -d --restart always \
- -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
- -v /home/nginx/conf/conf.d:/etc/nginx/conf.d \
- -v /home/nginx/logs:/var/log/nginx \
- -v /home/nginx/html:/usr/share/nginx/html \
- --link php-fpm:php \
- -d nginx:1.24.0
--link php-fpm:php 这个参数很重要,代表运行nginx的时候要关联php容器。
第七步:创建测试文件
在/home/nginx/html路径下创建info.php,内容如下:
- <?php
- echo phpinfo();
- ?>
第八步:测试
通过浏览器访问:
结束语
Docker 是一个开源的应用容器引擎,使用 Docker 可以快速搭建 PHP 运行环境。本文简单分享了一下使用 Docker 搭建 PHP 运行环境的完整步骤,供有此需求的小伙伴参考。如果有任何意见或建议,欢迎在下方评论处留言。
本文已通过「原本」原创作品认证,转载请注明文章出处及链接。
1F
看见Docker就瑟瑟发抖。
B1
@ 似水流年 Docker没有那么难,如果感兴趣的话,可以搭个docker环境研究一下。