教程 pingora tutorial

守护进程

在生产环境中,将 Pingora 作为 守护进程(Daemon) 运行非常重要,这样即使关闭终端或会话,服务仍能保持运行。

前台与后台运行

  • 前台模式(默认)
    Pingora 在终端中直接运行,便于调试和查看日志。
bash
  pingora --config /etc/pingora/config.yaml

`

  • 后台模式(守护进程) 使用 --daemon 参数,可以将 Pingora 转为守护进程:
bash
  pingora --config /etc/pingora/config.yaml --daemon

后台模式下,Pingora 会将 PID 文件 写入默认路径(如 /var/run/pingora.pid),便于管理。

管理守护进程

查看状态

bash
ps aux | grep pingora
cat /var/run/pingora.pid

停止服务

bash
kill $(cat /var/run/pingora.pid)

重启服务

bash
kill -HUP $(cat /var/run/pingora.pid)

注:使用 HUP 信号可触发优雅重启,保证连接不中断。

与系统服务集成

推荐使用 systemd 管理 Pingora 守护进程,实现开机自启和统一管理。

示例 systemd 服务文件

路径:/etc/systemd/system/pingora.service

ini
[Unit]
Description=Pingora Proxy Service
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/bin/pingora --config /etc/pingora/config.yaml --daemon
ExecReload=/bin/kill -HUP $MAINPID
ExecStop=/bin/kill -TERM $MAINPID
Restart=on-failure
User=pingora
Group=pingora

[Install]
WantedBy=multi-user.target

启用与启动服务

bash
systemctl daemon-reload
systemctl enable pingora
systemctl start pingora
systemctl status pingora

通过守护进程运行,Pingora 可以在后台稳定运行,结合 systemd 可以实现开机自启、自动重启和日志集中管理,适合生产环境部署。