### 拉取php5.6 fpm的镜像docker pull php:5.6-fpm### 查看镜像docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEphp 5.6-fpm 3458979c7744 23 months ago 344MB
运行php容器docker run --name php-56-fpm -d -v /work/docker/www:/www php:5.6-fpm
命令说明:
Nginx安装 拉取官方镜像--name php-56-fpm 命名容器名称为php56fpm
-d 后台运行容器
-v /work/docker/www:/www 将宿主机目录/work/docker/www挂载到容器的/www
php:5.6-fpm 指定镜像为php,TAG为5.6-fpm
### 拉取镜像docker pull nginx### 查看镜像docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEnginx latest ae2feff98a0c 3 weeks ago 133MB
运行Nginx容器docker run --name myNginx -p 8080:80 -d -v /work/docker/www:/www -v /work/docker/nginx/conf.d:/etc/nginx/conf.d --link php-56-fpm:php nginx
命令参数说明:
Nginx配置--name myNginx 命名容器名称为myNginx
-p 8080:80 将容器的80端口映射到宿主机的8080端口
-d 后台运行容器,并返回容器ID
-v /work/docker/www:/www 将宿主机目录/work/docker/www挂载到容器的/www
-v /work/docker/nginx/conf.d:/etc/nginx/conf.d 将宿主机目录/work/docker/nginx/conf.d挂载到容器的/etc/nginx/conf.d
--link php-56-fpm:php 把php56fpm的网络并入nginx容器,并修改nginx容器的/etc/hosts,让nginx可以通过php:9000访问到php-fpm
nginx 指定镜像名称
修改/work/docker/nginx/conf.d/default.conf配置文件如下:
server { listen 80; server_name localhost; location / { root /www; 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; #这个就是--link并入的网络连接 fastcgi_index index.php; fastcgi_param script_FILENAME /www$fastcgi_script_name; #特别说明:这里的/www要与php56fpm容器里映射的php脚本路径一致,否则php-fpm将找不到php脚本,会报404错误 include fastcgi_params; }}
接下来我们在 /work/docker/www 目录下创建 index.php,代码如下:
<?phpphpinfo();
浏览器打开http://127.0.0.1:8080/index.php,显示如下:
phpinfo.png
作者:山哥的哥
链接:https://www.jianshu.com/p/69edb8f8c731
来源:简书