workerman启动正常后查看状态是未运行

lyd51888

问题描述

我在ubuntu20.04容器中, 启动workerman start 命令正常, 但是在用 status 查看, 提示 not run

用的php7.4.33版本, 在其它服务器上运行正常

程序代码或配置

截图

ps auxf
截图

root
截图

截图
看了下, 是这个文件$cmdline = "/proc/{$master_pid}/cmdline" 这个文件存在了就不行了

117 1 0
1个回答

walkor 打赏

ps auxf 截图下

  • lyd51888 19天前

    截图了

  • walkor 19天前

    截图大一点

  • lyd51888 19天前

    我都是在root用户执行的, 是不是和容器的什么设置有关系呢

  • lyd51888 19天前

    在看一下

  • walkor 19天前

    用root执行status

  • lyd51888 19天前

    执行了

  • walkor 19天前

    应该是pid文件丢失了或者被改动了,不要把pid文件加到代码库里。
    设置下 Worker::$pidFile,把pid文件放到安全的位置,保证pid文件不会被删除或者被git更新。
    把进程从上到下都kill掉重启

  • lyd51888 19天前

    也不行, 启动后进程一直存在的, pid文件我看了也有

  • walkor 19天前

    你自己定位下吧,可能是yii影响了

  • lyd51888 19天前

    我用的是docker容器, 感觉是不是和这个有关系, 我宿主主机上也是同样的php版本 就没问题的

  • lyd51888 19天前

    是这个文件$cmdline = "/proc/{$master_pid}/cmdline" 这个文件的作用是什么

  • lyd51888 19天前

    checkMasterIsAlive 是这个方法的判断是出了问题

×
🔝