Docker部署php运行环境

编写docker-compose.yml配置文件,使用nginx作为web服务器,转发php的请求。

version: "3"

services:
  web:
    image: nginx:stable-alpine
    ports:
      - "8081:80"
    volumes:
      - ./nginx/www:/usr/share/nginx/html
      - ./nginx/conf.d:/etc/nginx/conf.d:ro

  php:
    image: php:7.3.29-fpm
    volumes:
      - ./nginx/www:/www

分别再对应的目录中准备一个index.php文件来验证php的可行性

<?php
    phpinfo();
?>

再写一个Nginx的配置来转发php的请求

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:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /www/$fastcgi_script_name;
        include        fastcgi_params;
    }
}

启动这个服务,访问网站可以看到php的版本信息。
PHP_INFO

如果我们需要部署一个Typecho,从Typecho官网下载源码并在网站目录中解压,再访问首页就会出现初始化安装页面
Typecho安装页面
然后就是根据特定代码踩坑就行。。。

作者:Mr.Chip

出处:https://www.cnblogs.com/mrchip/p/18219621

版权:本作品采用「知识共享署名 4.0 国际许可协议」许可协议进行许可。

posted @   mrchip  阅读(54)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
more_horiz
keyboard_arrow_up dark_mode palette
选择主题
点击右上角即可分享
微信分享提示