workerman开机自动启动方法 centos7,已解决,分享给大家

owenzhang

已解决,分享给大家
https://my.oschina.net/owenzhang24/blog/5534156
有兴趣看看,提下建议,谢谢

1541 2 2
2个回答

Tinywan

systemctl 大法

nitron

/usr/lib/systemd/system/webman.service

[Unit]
Description=Webman sevice
After=network.target network-online.target nss-lookup.target

[Service]
Restart=on-failure
User=www-data
Type=forking
PIDFile=/path/to/webman/runtime/webman.pid
SyslogLevel=err
ExecStart=/usr/bin/php /path/to/webman/start.php start -d
ExecReload=/usr/bin/php /path/to/webman/start.php reload -d  
KillMode=mixed

[Install]
WantedBy=multi-user.target

我推荐PM2,root安装后,其他用户可以直接使用

systemctl/supervisor这种操作需要sudo权限,实际上服务器一般帐号是不给sudo权限的

  • Tinywan 2022-06-01

    那其他用户把服务给停了咋办?哈哈

  • = - = 2022-06-01

    为啥不考虑 supervisor 呢. 如果有这种情况, 该考虑的是收回服务器管理权限了.

  • owenzhang 2022-06-01

    对哦,你没说我都忘记了别的用户,那我把原来的php start.php start -d 改成sudo php start.php start -d,加个sudo不就解决问题了 是吧?

  • owenzhang 2022-06-01

    @= - =
    supervisor 不觉得变复杂了吗,还得安装supervisor ,哈哈哈

  • nitron 2022-06-01

    基本上不是系统级服务都不会给到root相同权限,打个比方,我们会给一个deploy用户,隶属www-data组,用于临时线上改代码,这样可以不用高权限帐号去重启业务

  • owenzhang 2022-06-01

    @nitron
    嗯嗯 好的,明白了,谢谢!

  • nitron 2022-06-01

    我指的是pm2,跟我上面给的systemctl的service没关系哈

  • owenzhang 2022-06-01

    ok

年代过于久远,无法发表回答
🔝