跳到主要内容

命令行参数

Pingap 主要通过 toml 文件进行配置,但某些启动参数需要通过命令行或环境变量指定:

命令行参数

参数简写说明
confc配置文件或目录路径,默认为当前目录。支持格式:
- 单文件:/opt/pingap/conf/pingap.toml
- 多文件目录:/opt/pingap/conf
- 拆分配置目录:/opt/pingap/conf?separation
- etcd:etcd://user:pass@ip:port/path?timeout=10s
daemond以守护进程方式运行(upgrade 功能必需)
upgradeu无中断更新模式,通过 unix socket 接收原程序请求
testt仅测试配置有效性
log-日志输出目录
admin-管理后台地址,支持认证格式:
- Base64:base64(user:pass)@ip:port
- 明文:user:pass@ip:port/prefix
cp-标记为控制面板节点(仅用于 etcd 模式)
autorestarta配置更新时自动重启(包含 autoreload 功能)
autoreload-自动更新部分配置(仅支持 upstream、location、plugin、certificate)
sync-同步配置到其他存储后退出
template-输出配置模板后退出

环境变量

命令行参数均可通过环境变量设置:

环境变量对应参数
PINGAP_CONF--conf
PINGAP_DAEMON--daemon
PINGAP_UPGRADE--upgrade
PINGAP_LOG--log
PINGAP_ADMIN_ADDR管理后台地址
PINGAP_ADMIN_USER管理后台用户名
PINGAP_ADMIN_PASSWORD管理后台密码
PINGAP_CP--cp
PINGAP_AUTORESTART--autorestart
PINGAP_AUTORELOAD--autoreload

文件配置模式启动示例

配置目录位于 /opt/pingap/conf,配置变更时自动重启:

RUST_LOG=INFO pingap \
-c=/opt/pingap/conf -d \
--log=/opt/pingap/pingap.log \
--autorestart

etcd 配置模式启动示例

多节点部署时推荐使用管理节点与应用节点分离模式。

管理节点:

RUST_LOG=INFO pingap \
-c="etcd://127.0.0.1:2379/pingap?timeout=10s&connect_timeout=5s&user=pingap&password=123123" \
--cp \
--admin=pingap:123123@127.0.0.1:3018

应用节点:

RUST_LOG=INFO pingap \
-c="etcd://127.0.0.1:2379/pingap?timeout=10s&connect_timeout=5s&user=pingap&password=123123" \
-d --log=/opt/pingap/pingap.log \
--autorestart

注意事项:

  • etcd 连接格式:etcd://ip1:port1,ip2:port2/path?user=xx&password=xx,其中 /path 需对应不同应用实例
  • admin 参数格式为 user:password,建议配置以启用 Basic Auth 认证