三: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测试工具的安装使用;



浙公网安备 33010602011771号