Docker安装Nginx和PHP7环境

DevOps 2020年06月04日

本篇笔记记录了CentOS7下基于Docker安装Nginx和PHP7环境的过程

准备工作

系统信息
CentOS Linux release 7.8.2003 (Core)
192.168.75.128
firewalld - 已关闭
selinux - 已关闭
创建Nginx站点配置目录

mkdir -p /docker/nginx/conf.d

创建Nginx站点配置文件

vim /docker/nginx/conf.d/default.conf

配置如下

server {
    listen  80 default_server;
    server_name  localhost;

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

    location ~ \.php$ {
        fastcgi_pass   172.17.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

172.17.0.1 是我安装Docker时自动创建的默认网桥地址,运行容器时如果不指定网络将会使用默认的网络进行容器间通信
创建站点根目录

mkdir -p /var/www/html

创建php测试文件

vim /var/www/html/index.php
<?php
phpinfo();

拉取官方镜像

docker pull nginx:1.19.0
docker pull php:7.2.29-fpm

查看本地镜像

docker images

运行容器

运行PHP容器

docker run -p 9000:9000 --name fpm-9000 \
-v /var/www/html:/usr/share/nginx/html \
-d php:7.2.29-fpm

运行Nginx容器

docker run -p 80:80 --name nginx-80 \
-v /var/www/html:/usr/share/nginx/html \
-v /docker/nginx/conf.d:/etc/nginx/conf.d \
-d nginx:1.19.0

查看容器

docker container ps -a


nginx-80fpm-9000两个容器的状态都是Up

浏览器访问测试