easyswoole实现开机自启

简介: easyswoole实现开机自启

命令脚本

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

启动:

#!/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

重启:

#!/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

停止:

#!/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文件:

\[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/system 中:

cp easywoole.service /usr/lib/systemd/system

服务管理

启动服务:

systemctl start easyswoole

停止服务:

systemctl stop easyswoole

重启服务

systemctl reload easyswoole

加入到开机自启:

systemctl enable easyswoole
目录
相关文章
|
机器学习/深度学习 人工智能 TensorFlow
人工智能浪潮下的自我修养:从Python编程入门到深度学习实践
【10月更文挑战第39天】本文旨在为初学者提供一条清晰的道路,从Python基础语法的掌握到深度学习领域的探索。我们将通过简明扼要的语言和实际代码示例,引导读者逐步构建起对人工智能技术的理解和应用能力。文章不仅涵盖Python编程的基础,还将深入探讨深度学习的核心概念、工具和实战技巧,帮助读者在AI的浪潮中找到自己的位置。
|
存储 缓存 JavaScript
WebSocket 学习
WebSocket是用于创建低延迟、高效率双向通信的协议,适合实时数据传输如即时通讯和在线游戏。它通过一次性握手建立长期连接,允许服务器主动推送数据。WebSocket API包括WebSocket对象和事件处理程序,如onopen、onmessage、onerror和onclose。示例代码展示了如何创建WebSocket连接、发送和接收消息及处理各种事件。WebSocket服务器通常需要特定的框架支持,如Node.js中的`ws`库。使用WebSocket时,前端和后端都可以监听open、close、error和message事件来管理连接状态和数据交换。
356 8
|
缓存 JavaScript 程序员
【奇葩问题】vue项目在谷歌浏览器开启开发者工具时部分接口报错500 Proxy error: Could not proxy request
【奇葩问题】vue项目在谷歌浏览器开启开发者工具时部分接口报错500 Proxy error: Could not proxy request
511 0
|
安全 搜索推荐 Unix
如何提取指定镜像的 Dockerfile
如何提取指定镜像的 Dockerfile
494 0
RabbitMQ实现延迟消息居然如此简单,整个插件就完事了
RabbitMQ实现延迟消息的方式有两种,一种是使用死信队列实现,另一种是使用延迟插件实现。死信队列实现我们以前曾经讲过这次我们讲个更简单的,使用延迟插件实现。
Mac M1 报错 ld: library not found for -lSystem
Mac M1 报错 ld: library not found for -lSystem
729 0
|
JSON 网络协议 PHP
PHP写微服务之Hyperf
PHP写微服务之Hyperf
797 0
PHP写微服务之Hyperf
|
消息中间件 NoSQL Kafka
|
存储 JSON 缓存
Java小技能:多级菜单排序并返回树结构菜单列表
需求: 菜单管理(服务商角色配置权限管理)、文章分类、MCC类目、区域信息。
715 0
Java小技能:多级菜单排序并返回树结构菜单列表
|
数据库连接 PHP 数据库
thinkphp断线重连
thinkphp断线重连
565 0