
1panel中PHP网站临时实现守护进程
本文最后更新于 2024-11-28,文章内容可能已经过时,请注意发布时间。
前言
根据官方所说,目前1Panel是不支持该功能的,所以只能够自行在镜像中安装 Supervisor ,在官方论坛中,我貌似找到了临时的解决方法
根据这里,我们来整理一下具体的操作流程。
一、下载镜像包
在官方给出的回复中,我们可以找到一个github链接
当然,访问慢的同学我也准备了一个已经下载好的压缩包供大家下载,php8.zip 。
二、部署并创建环境
第一步:
上传并解压文件
下载后可以把他上传到 /opt/1panel/resource/apps/local
目录,并解压。
第二步:同步应用
第三步:创建运行环境
到了创建运行环境这里,会发现我们上传的镜像在选择框中了,如果没有出现的话仔细核对之前的步骤是否有误
第四步:创建网站
使用我们刚刚制作好的镜像来创建一个php网站
三、配置Supervisor
第一步:进入安装目录
进入应用商城,点击已安装,找到我们刚刚创建的网站,进入安装目录
会看到这个目录
进入 supervisor 目录会看到他的配置文件
第二部:创建配置文件
supervisor.d目录下的文件
里面的配置
[program:lq_queue_worker]
; 命令所在目录,对应你要求的 /www/sites/网站/index/根目录
directory = /www/sites/
; 要执行的命令以laravel为例
command = php artisan queue:work
; 进程的用户,根据实际情况修改,例如 www-data 等,如果不清楚可保持默认或先使用 root(不推荐长期用 root)
user = root
; 进程数量,一般队列工作进程可以根据实际情况设置合适的数量,这里先设为 1
numprocs = 1
; 进程启动的优先级,数字越大优先级越低,这里设为常规的 999
priority = 999
; 是否自动启动,设为 true 则随 supervisord 启动而启动该进程
autostart = true
; 进程意外退出是否自动重启,设为 true 则自动重启
autorestart = true
; 启动进程时等待的秒数,可按需设置
startsecs = 5
; 标准输出日志文件路径,可根据实际修改存放位置和文件名
stdout_logfile = /var/log/supervisor/lq_queue_work.log
; 标准错误输出日志文件路径,可与标准输出设置为同一个,便于查看错误信息
stderr_logfile = /var/log/supervisor/lq_queue_work.log
; 进程运行的环境变量,可以在这里添加特定的环境变量设置(如果有需要),例如数据库连接相关等,示例如下(如果不需要可不添加)
; environment=DB_CONNECTION=mysql,DB_HOST=127.0.0.1,DB_PORT=3306,DB_DATABASE=your_database,DB_USERNAME=your_username,DB_PASSWORD=your_password
第四步:重载配置
进入容器,使用这两个命令来重载配置
supervisorctl reread
supervisorctl update
然后查看状态,running就是正在运行
supervisorctl status
第四步,查看日志
启动成功后,来到log目录来查看我们的日志是否有正常记录
进入log后可以看到我们的进程是已经记录日志的
查看一下日志,在这里我们之前没有修改执行命令的路径,所以报错了,后面的可以看到,进程是正常执行了
supervisor: couldn't chdir to /www/lq: ENOENT
supervisor: child process was not spawned
supervisor: couldn't chdir to /www/lq: ENOENT
supervisor: child process was not spawned
supervisor: couldn't chdir to /www/lq: ENOENT
supervisor: child process was not spawned
supervisor: couldn't chdir to /www/lq: ENOENT
supervisor: child process was not spawned
2024-11-28 05:06:44 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:06:44 App\Jobs\TestJobs ......................... 69.54ms DONE
2024-11-28 05:06:44 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:06:44 App\Jobs\TestJobs ......................... 64.11ms DONE
2024-11-28 05:06:44 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:06:44 App\Jobs\TestJobs ......................... 60.81ms DONE
2024-11-28 05:06:44 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:06:44 App\Jobs\TestJobs ......................... 52.40ms DONE
2024-11-28 05:06:45 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:06:45 App\Jobs\TestJobs ......................... 47.17ms DONE
2024-11-28 05:06:45 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:06:45 App\Jobs\TestJobs ......................... 57.25ms DONE
2024-11-28 05:08:09 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:08:09 App\Jobs\TestJobs ......................... 77.03ms DONE
2024-11-28 05:08:09 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:08:10 App\Jobs\TestJobs ......................... 46.06ms DONE
2024-11-28 05:08:10 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:08:10 App\Jobs\TestJobs ......................... 43.68ms DONE
2024-11-28 05:09:10 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:09:10 App\Jobs\TestJobs ........................ 115.91ms DONE
2024-11-28 05:09:16 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:09:16 App\Jobs\TestJobs ......................... 76.54ms DONE
2024-11-28 05:10:11 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:10:11 App\Jobs\TestJobs ......................... 71.93ms DONE
2024-11-28 05:10:11 App\Jobs\TestJobs .............................. RUNNING
2024-11-28 05:10:11 App\Jobs\TestJobs ......................... 65.56ms DONE
结语
这个工具可以帮助我们便捷的实现进程守护和监控,还是非常好用的。
根据官方成员给出的预估,大概在v2版本的1panel会支持容器内的进程守护配置,我是非常期待的,希望1panel能够和雷总一样,用行动证明友商是傻逼哈哈哈哈哈哈!
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 年糕崽崽
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果