easyswoole实现开机自启

2021-01-18 10:47:59 浏览数 (1)

命令脚本

首先我们新建3个.sh文件,分别对应 启动,重启,停止 3个命令:

启动:

代码语言:javascript复制
#!/usr/bin/env bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH;
cd /Host/app-api/;## 这里cd进自己的项目目录
php easyswoole server start -d

重启:

代码语言:javascript复制
#!/usr/bin/env bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH;
cd /Host/app-api/;
git fetch --all && git reset --hard origin/master && git pull  ## 这里额外增加了强制拉git代码的命令,可以去掉
php easyswoole server stop && php easyswoole server start -d  ## 这里是先停止再启动,可以改成reload

停止:

代码语言:javascript复制
#!/usr/bin/env bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH;
cd /Host/app-api/;
php easyswoole server stop

服务脚本

新建easyswoole.service文件:

代码语言:javascript复制
[Unit]
Description=api server
After=network.target

[Service]
ExecStart=/usr/bin/bash /start.sh ## 绝对路径
ExecStop=/usr/bin/bash /stop.sh ## 绝对路径
ExecReload=/usr/bin/bash /reload.sh ## 绝对路径
Type=simple
User=root
Group=root
RuntimeDirectory=/work/ ## 自己的项目目录
RuntimeDirectoryMode=0755

[Install]
WantedBy=multi-user.target

服务脚本移动到 /usr/lib/systemd/ 中:

代码语言:javascript复制
cp easywoole.service /usr/lib/systemd/

服务管理

启动服务:

代码语言:javascript复制
 systemctl start easyswoole

停止服务:

代码语言:javascript复制
 systemctl stop easyswoole

重启服务

代码语言:javascript复制
 systemctl reload easyswoole

加入到开机自启:

代码语言:javascript复制
 systemctl enable easyswoole

本文为仙士可原创文章,转载无需和我联系,但请注明来自仙士可博客www.php20.cn

0 人点赞