手牵手一起使用 docker 搭建 PHP 环境,并使用 supervisor 管理你的 swoole 进程

随着公司项目的茁壮成长,所需要的功能越来越多。swoole的使用也就呼之欲出了!laravel框架目前比较好使用swoole的方案应该非laravels莫属了。自热而然的鄙人想到使用laravel+laravels+nginx+supervisor,打造一个简洁、易用、可扩展的docker-compose文件,供各位客官使用。

docker-php项目地址

使用方法

基础配置(以安装好docker-compose的同学们,可以跳过此步骤)

  1. 安装Docker(官方默认会自带docker-compose 工具), 已经安装过的可以跳过此步
  2. 对Docker Machine 设置里,配置Setting->Daemon->Registry mirrors,增加加速器URL,比如http://xxxx.m.daocloud.io
  3. 对Docker Machine 设置里,配置Setting->Shared Drives(Windows)/File Sharing(Mac),

Docker-php的使用

  1. 复制example.env到同级目录下,并重命名.env,命令操作
    cp ./example.env ./.env
  2. 修改.env文件的配置。LOCAL_STOARGE_PATH=设置为此github clone的根目录。 比如/var/www/html/docker-php
  3. 修改.env文件的配置。LOCAL_WEB_PATH=设置为你开发项目的基础根目录, 比如/var/www/html/docker-php/www
  4. 把要启动的进程,比如laravels 或者php 的supervisor配置文件加入到 /var/www/html/docker-php/supervisor/conf
  5. 启动docker-composer
    docker-compose up -d

nginx的使用

  1. 多个虚拟站点的配置,直接参考nginx/conf.d/demo.cfg, 复制粘贴demo.cfg在同目录下并重名为site1.conf, 并根据注释修改目录路径(以容器目录为准),重命名文件必须以conf扩展名结尾, 举例命令行
  2. nginx 的错误日志目录在 /var/www/html/docker-php/log/nginx

php的使用

  1. 【Seaslog】的配置范本文件在宿主机php/ext/ini/seaslog.ini里,根据注释复制一下,然后进入PHP容器修改容器内的文件/usr/local/etc/php/conf.d/docker-php-ext-seaslog.ini 即可, 命令如下
  2. php 中使用composer
    docker-compose exec php bash
    composer install

    supervisor 的使用

  3. supervisor 启动日志目录 /var/www/html/docker-php/log/supervisor
  4. supervisor 进程启动目录 /var/www/html/docker-php/supervisor/conf
  5. supervisor 的基本使用命令介绍
    //进入php容器内
    docker-compose exec php bash
    //启动某个进程(program_name=你配置中写的程序名称)
    supervisorctl start program_name
    //查看正在守候的进程
    supervisorctl
    //停止某一进程 (program_name=你配置中写的程序名称)
    supervisorctl stop program_name
    //重启某一进程 (program_name=你配置中写的程序名称)
    supervisorctl restart program_name
    //停止全部进程
    supervisorctl stop all

    在这里特别鸣谢php界的暖男(laravels的作者),并附上项目地址:https://github.com/hhxsv5/laravel-s

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 1
likunyan

不错,手牵手

3个月前 评论

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!