docker 安装nginx+php
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
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();
最后大功告成
------------恢复内容结束------------