跳转到主要内容

用环境变量启动 NPC

在容器或自动化环境中通过服务端地址和验证密钥启动无配置文件 NPC

无配置文件模式下,NPC 可从环境变量读取服务端地址和客户端验证密钥,适合容器、systemd EnvironmentFile 或密钥注入平台。

支持的变量

环境变量含义示例
NPC_SERVER_ADDRNPS 桥接地址,包含端口nps.example.com:8024
NPC_SERVER_VKEY客户端验证密钥Web 管理中该客户端的密钥

Shell 示例:

export NPC_SERVER_ADDR=nps.example.com:8024
export NPC_SERVER_VKEY='请替换为实际密钥'
./npc

只有在未指定配置文件时,这两个变量才会直接启动 NPC。命令行已提供 -server 或 -vkey 时,对应命令行值优先。连接协议、TLS、代理和超时没有对应环境变量,需要继续使用命令行参数,例如:

./npc -tls_enable=true -disconnect_timeout=60

systemd 示例

创建仅 root 可读的 /etc/nps/npc.env:

NPC_SERVER_ADDR=nps.example.com:8024
NPC_SERVER_VKEY=请替换为实际密钥

服务中引用:

[Service]
EnvironmentFile=/etc/nps/npc.env
ExecStart=/usr/local/bin/npc

设置权限并重启服务:

chmod 600 /etc/nps/npc.env
systemctl daemon-reload
systemctl restart npc

Docker Compose 示例

services:
  npc:
    image: your-npc-image
    restart: unless-stopped
    environment:
      NPC_SERVER_ADDR: nps.example.com:8024
      NPC_SERVER_VKEY: ${NPC_SERVER_VKEY}

不要把真实密钥提交到 Compose 文件或代码仓库;使用 .env、Docker Secret 或部署平台密钥管理。启动后从 NPC 日志和 Web 客户端列表确认连接的是预期地址与客户端。