1. 安装Ngnix镜像
1.1 从远程仓库拉取nginx镜像
docker pull nginx
1.2 从远程仓库拉取php镜像
docker pull php:7.1.30-fpm
2. 实例化
2.1 实例化准备
新建几个文件夹,分别用来映射:网站根目录、nginx配置文件、日志文件
mkdir -p ~/Docments/nginx/www ~/Docments/nginx/logs ~/Docments/nginx/conf
在新建的www目录中新建:index.php用来检测php环境是否搭建成功:
<?php
echo "hello world"
?>
在nginx配置文件目录conf下新建:nginx.conf,后缀是.conf即可:
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最常见的默认配置,默认就好。
2.2 实例化php
docker run --name myphp7 -v ~/Docments/nginx/www:/www -d php:7.1.30-fpm
2.3 实例化nginx
docker run --name php-nginx -p 80:80 -v ~/Documents/nginx/www:/usr/share/nginx/html -v ~/Documents/nginx/conf:/etc/nginx/conf.d --link myphp7:php -d nginx
这是指定端口,网站根目录,网站配置文件目录,其实没有指定网站日志目录,不知道你有没有看出来,哈哈哈!
3. 检测是否搭建成功
curl 127.0.0.1
ok
由于映射文件后,~/Documents/nginx的所属用户为Docker,所以我是不能改那个文件的