2025-03-07
PHP
hyperf3.1、systemd
92
一、配置文件
1.创建文件
mkdir /etc/systemd/system/hyperf/
cd /etc/systemd/system/hyperf/
touch /etc/systemd/system/hyperf/xxx-xxx-xxx.service
chmod 777 /etc/systemd/system/hyperf/xxx-xxx-xxx.service
vim /etc/systemd/system/hyperf/xxx-xxx-xxx.service
2.文件配置
[Unit]
Description=Hyperf auto start
After=network.target
[Service]
Type=forking
User=root
Group=root
PIDFile=/www/xxx-xxx/xxx-xxx-xxx/runtime/hyperf.pid
WorkingDirectory=/www/xxx-xxx/xxx-xxx-xxx
ExecStart=/usr/bin/php82 /www/xxx-xxx/xxx-xxx-xxx/bin/hyperf.php start
# Restart=no:永不自动重启
# Restart=on-failure:仅当非正常退出时重启(正常:systemctl stop xxx;非正常:kill -9 pid)
# Restart=always:任何情况都重启
Restart=on-failure
RestartSec=3s
[Install]
WantedBy=multi-user.target
3.开机启动
# 重新加载配置
chmod 644 /etc/systemd/system/hyperf/xxx-xxx-xxx.service
systemctl daemon-reload
# 加入开机启动
systemctl enable /etc/systemd/system/hyperf/xxx-xxx-xxx.service
# 立即启动服务
systemctl start xxx-xxx-xxx.service
systemctl stop xxx-xxx-xxx.service
systemctl restart xxx-xxx-xxx.service
# 查看服务状态
systemctl status xxx-xxx-xxx.service
二、注意事项
1.命令:sh hyperf.sh stop
sh hyperf.sh stop:非正常退出命令,退出后,系统会自动重启hyperf进程;
systemctl stop xxx-xxx-xxx.service:正常退出命令