php 环境需要与 nginx 配合安装,共享 nginx 解析的目录(www)

基本参数

  1. -d 后台启动
  2. --name 定义一个别名
  3. -v 挂载目录
  4. --link 链接其它 docker 容器名称

安装 php

即安装 php-fpm 环境

docker search php

1
docker run --name  dev-phpfpm -v /d/local/nginx/www:/www  -d php:5.6-fpm
  1. /d/local/nginx/www 这里必须是 nginx 解析的目录,也就是与 nginx 共享目录。

安装 nginx

ro 表示只读权限

1
docker run --name dev-nginx-php -p 8080:80 -d -v /d/local/nginx/www:/usr/share/nginx/html:ro -v /d/local/nginx/conf.d:/etc/nginx/conf.d:ro --link dev-phpfpm:php nginx
  1. /d/local/nginx/www , /d/local/nginx/conf.d是宿主机的目录,可以自定义。
  2. /usr/share/nginx/html, /etc/nginx/conf.d 是 nginx 里的固定目录,不能更改。
  3. --link dev-phpfpm:php 是链接上面的 php 容器,dev-phpfpm是别名,php 是php容器

修改nginx配置文件

/d/local/nginx/conf.d 是 nginx 映射的目录。

/d/local/nginx/conf.d 目录下创建:php.conf文件

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
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;
    }
}

验证

/d/local/nginx/www目录下创建,phpinfo.php

1
2
<?php
echo phpinfo();

关于我

我的博客:https://www.sgfoot.com

欢迎关注我的微信公众号【空树之空】,共同学习,一起进步~ 空树之空