Licence
MIT
Version
0.2.3
Deps
4
Size
76 kB
Vulns
0
Weekly
0
nginx-proxy-manager-cli
用于在命令行管理 Nginx Proxy Manager。
命令入口:
nginx-proxy-manager
安装
pnpm add -g nginx-proxy-manager-cli
快速开始
nginx-proxy-manager profile add prod \
--base_url https://proxy.example.com \
--username admin@example.com \
--password "$PASSWORD" \
--default
nginx-proxy-manager health
nginx-proxy-manager proxy-hosts list
写操作默认需要确认。脚本或自动化环境中使用 --yes:
nginx-proxy-manager --yes proxy-hosts create \
--domain_names app.example.com \
--forward_scheme http \
--forward_host app \
--forward_port 8080
复杂请求体使用 --body-json 或 --from-file:
nginx-proxy-manager --yes proxy-hosts update 1 \
--body-json '{"enabled":true}'
常规 API 命令优先支持全局 --json,方便脚本读取。二进制下载、stream/raw payload 按命令语义处理;使用 --output 写文件时,--json 可用于输出 ok、output、bytes 等结果元数据。
配置
默认配置路径:
$HOME/.nginx-xproxy-manager.json
配置路径优先级:
--config PATHNGINX_PROXY_MANAGER_CONFIG- 默认配置路径
示例:
nginx-proxy-manager --config ./npm-config.json proxy-hosts list
Profile
nginx-proxy-manager profile add
nginx-proxy-manager profile add prod --base_url https://proxy.example.com --username admin --password "$PASSWORD" --default
nginx-proxy-manager profile list
nginx-proxy-manager profile show prod
nginx-proxy-manager profile use prod
nginx-proxy-manager --yes profile remove prod
命令
认证与健康检查:
nginx-proxy-manager auth token
nginx-proxy-manager health
nginx-proxy-manager schema
Certificates:
nginx-proxy-manager certificates list
nginx-proxy-manager certificates get 1
nginx-proxy-manager --yes certificates create --body-json '{"provider":"letsencrypt","domain_names":["example.com"]}'
nginx-proxy-manager --yes certificates delete 1
nginx-proxy-manager --yes certificates renew 1
nginx-proxy-manager certificates download 1 --output cert.zip
nginx-proxy-manager certificates download 1 --output ./downloads
nginx-proxy-manager --yes certificates upload --from-file certificate-upload.json
Proxy hosts:
nginx-proxy-manager proxy-hosts list
nginx-proxy-manager proxy-hosts get 1
nginx-proxy-manager --yes proxy-hosts create --domain_names app.example.com --forward_scheme http --forward_host app --forward_port 8080
nginx-proxy-manager --yes proxy-hosts update 1 --body-json '{"enabled":true}'
nginx-proxy-manager --yes proxy-hosts delete 1
nginx-proxy-manager --yes proxy-hosts enable 1
nginx-proxy-manager --yes proxy-hosts disable 1
Redirection hosts:
nginx-proxy-manager redirection-hosts list
nginx-proxy-manager redirection-hosts get 1
nginx-proxy-manager --yes redirection-hosts create --body-json '{"domain_names":["old.example.com"],"forward_domain_name":"new.example.com"}'
nginx-proxy-manager --yes redirection-hosts update 1 --from-file redirection-host.json
nginx-proxy-manager --yes redirection-hosts delete 1
nginx-proxy-manager --yes redirection-hosts enable 1
nginx-proxy-manager --yes redirection-hosts disable 1
Streams:
nginx-proxy-manager streams list
nginx-proxy-manager streams get 1
nginx-proxy-manager --yes streams create --body-json '{"incoming_port":2222,"forwarding_host":"ssh","forwarding_port":22}'
nginx-proxy-manager --yes streams update 1 --from-file stream.json
nginx-proxy-manager --yes streams delete 1
nginx-proxy-manager --yes streams enable 1
nginx-proxy-manager --yes streams disable 1