三:swoft2环境部署3

修改代码自动重启服务:SwoftCli的使用

如果使用的是基于alpine的docker环境,那么执行下面

apk add procps

 

 

 此工具仅仅在开发环境使用

swoft2把监控文件变动并重启服务的代码专门做了个客户端工具

基本原理:

(1):死循环 收集指定一堆文件的md5值(详查php的md5_file函数)

(2):一旦文件发生变动,md5值就会发生变化;

(3):如果变化,就发信息给主进程ID,重启服务(整个服务而非worker进程)

//代码大约在 ServerCommand的205行

 

(1):下载:

需要将下面命令里的 {VERSION} 替换为指定的版本。当然也你可以直接通过浏览器下载

wget https://github.com/swoft-cloud/swoft-cli/releases/download/{VERSION}/swoftcli.phar

# 检查包是否可用
php swoftcli.phar -V
php swoftcli.phar -h

wget https://github.com/swoft-cloud/swoft-cli/releases/download/v0.1.3/swoftcli.phar

 

 

 

 

 

 

 

(2):全局使用(以下命令均在容器里操作)

如果你需要在任何地方都可以直接使用 swoftcli:

(a):move to ENV path:
mv swoftcli.phar /usr/local/bin/swoftcli

 

 (b):修改权限

 

chmod a+x /usr/local/bin/swoftcli
swoftcli -V

 

 

 

(3):然后先把swoft服务停止掉(如果出现问题,则直接重启容器即可)

#cd /swoft

#php bin/swoft http:stop

#swoftcli run -c http:start -b bin/swoft

 

新进入的这个容器窗口便不要动了,如果需要重启操作 ,新开进入容的窗口;

如此便完成了SwoftCli测试工具的安装使用;

 

 

 

 

posted @ 2019-11-15 10:45  痞子胥  阅读(215)  评论(0)    收藏  举报