1.找到自己要装的php版本pull下来,也可以直接pull最新版



//查看版本
docker search php


 //把镜像拉下来

 拉取指定版本 docker pull php:7.2-fpm

 拉取最新版本 docker pull php


 

2.再把 nginx 也pull下来



docker pull nginx:latest


 

3.执行完后看一下有没有成功获取到镜像



docker images


docker 安装nginx+php_nginx

 

 

 

4. 创建一手目录和文件



mkdir -p 路径可自定义 && mkdir 路径可自定义 &&  cd 路径可自定义 && sudo touch default.conf

示例:mkdir -p /data/nginx/conf.d && mkdir /data/www && cd /data/nginx/conf.d && sudo touch default.conf


 

5.找到刚刚创建目录下的 default.conf ,写入配置



server {
listen 80;
server_name localhost;

location / {
root /usr/share/nginx/html;
index index.html index.htm;
}

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 /var/www/html/$fastcgi_script_name;
include fastcgi_params;
}
}


 

 

 

6.启动php-fpm



docker run --name 容器名称 -d -v 本地 php 文件的存储目录:容器内 php 文件的存储目录:权限ro只读 镜像名称
示例:docker run --name php72 -d -v /data/www:/var/www/html:ro php:7.2-fpm


 

7.再启动一手nginx,并把 php 的网络并入 nginx,并通过修改 nginx 的 /etc/hosts,把域名php 映射成 127.0.0.1,让 nginx 通过 php:端口 访问 php-fpm



docker run --name 容器名 -p 把80端口映射到你用的端口 -d -v 本地html文件存储目录:/usr/share/nginx/html:ro -v 本地nginx配置文件目录:/etc/nginx/conf.d:ro --link php容器名称:php nginx

示例:docker run --name nginx -p 9871:80 -d -v /data/www:/usr/share/nginx/html:ro -v /data/nginx/conf.d:/etc/nginx/conf.d:ro --link php72:php nginx


 

8.在本地html文件目录(示例中的 /data/www )下创建 index.php,访问当前服务器地址: nginx端口号/index.php  ,例:xxx.xxx.xxx.xxx:9871/index.php



<?php
echo phpinfo();


docker 安装nginx+php_html_02

 

 

最后大功告成 

 

 

 

 

 

------------恢复内容结束------------