Docker 搭建多容器组合服务 (nginx + PHP)

549 阅读3分钟

Docker 搭建多容器组合服务 (nginx + php)

  • 首先要确保本地 docker 环境已经安装成功

    Docker NGINX + PHP

Docker 安装 Nginx

  1. docker pull nginx (拉取最新 nginx 镜像)
    Docker NGINX + PHP

docker images (查看本地 nginx 镜像是否安装成功)

Docker 搭建 多容器组合服务(nginx + php)

Docker 安装 PHP

  1. docker pull php:7.4-fpm (拉取指定版本的 php )
    Docker 搭建 多容器组合服务(nginx + php)

docker images (查看本地 php 镜像是否安装成功)

Docker 搭建 多容器组合服务(nginx + php)
  • 准备好一个本地目录用于容器挂载 (例如 E:\WWW 目录)

  • 使用 docker 运行 php 、nginx 容器

  • 1.运行 php 命令 “docker run –name myphp -p 9000:9000 -v E:\WWW:/var/www/html -d php:7.4-fpm” (注意: myphp 容器的 /var/www/html 目录 挂载了一个本地 E:\WWW 目录)

    Docker 搭建 多容器组合服务 (nginx + PHP)


    2.运行 nginx 命令 “docker run –name mynginx -p 80:80 -v E:\WWW:/usr/share/nginx/html –link=myphp:phpfpm -d nginx” (注意:mynginx 容器的 /usr/share/nginx/html 目录 挂载了一个本地 E:\WWW 目录,–link=” 这里是要连接的容器名,如命令 myphp “:” 这里是别名”)

    Docker 搭建 多容器组合服务 (nginx + PHP)

    3.配置 default.conf 复制到 mynginx 容器里 /etc/nginx/conf.d 目录下

    server {
    listen       80;
    server_name  localhost;
    
    location / {
       root   /usr/share/nginx/html;
       index  index.html index.htm index.php;
    }
    
    location ~ \.php$ {
       # 注意 这里是 php 的挂载目录哦
       root           /var/www/html;
       fastcgi_pass   phpfpm:9000;
       fastcgi_index  index.php;
       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
       include        fastcgi_params;
    }
    }

    以上就是 default.conf 的配置内容 需要注意 fastcgi_pass,fastcgi_param,root 这几项的配置

    4.复制本地 “default.conf” 配置文件到 “mynginx” 容器里面

    命令 “docker cp E:\WWW\default.conf 1501fae3ec6f:/etc/nginx/conf.d” (E:\WWW\default.conf 这里是本地文件路径; 1501fae3ec6f 代表 mynginx 容器 id ;/etc/nginx/conf.d 代表 mynginx 容器里的目录)

    Docker 搭建 多容器组合服务 (nginx + PHP)

    5.“docker exec -it mynginx bash” 命令 进入 mynginx 容器里面 执行 “ service nginx reload ” 加载 nginx 配置文件

    6.访问项目 index.php 成功打印出 phpinfo 信息

    Docker 搭建 多容器组合服务 (nginx + PHP)

    我的官方群点击此处加入群聊【PHP/web/高级学习交流群】,一起学习,相互讨论。

    群内已经有管理将知识体系整理好(源码,学习视频等资料),欢迎加群免费领取


    这套精品PHP教程绝不是市场上的那些妖艳贱货可比,作为web开发的佼佼者PHP并不逊色其他语言,加上Swoole后更加是如虎添翼!进军通信 、物联网行业开发百度地图、百度订单中心、虎牙、战旗TV等!寒冬裁员期过后正是各大企业扩大招人的时期,现在市场初级程序员泛滥,进阶中高级程序员绝对是各大企业急需的人才,这套学习教程适合那些1-5年以内的PHP开发者正处于瓶颈期,想要突破自己进阶中高级、架构师!名额有限,先到先得!

    腾讯T3-T4标准精品PHP架构师教程目录大全,只要你看完保证薪资上升一个台阶(持续更新)​

    部分资料截图:

    还有限时精品福利:

    ★腾讯高级PHP工程师笔试题目

    ★亿级PV高并发场景订单的处理

    ★laravel开发天猫商城组件服务

    ★战旗TV视频直播的架构项目实战

    扫描下面二维码领取



    对PHP后端技术,对PHP架构技术感兴趣的朋友,我的官方群点击此处,一起学习,相互讨论。

    群内已经有管理将知识体系整理好(源码,学习视频等资料),欢迎加群免费领取。

    本课程深度对标腾讯T3-T4标准,贴身打造学习计划为web开发人员进阶中高级、架构师提升技术,为自己增值涨薪!加入BAT特训营还可以获得内推大厂名额以及GO语言学习权限!!!