在群晖 NAS 上运行 NPC
使用 Container Manager 部署 NPC 并正确访问 NAS 和局域网服务
在支持 Container Manager 的群晖 NAS 上,建议使用 NPC 容器。官方镜像提供 linux/amd64、linux/arm 和 linux/arm64 平台;实际可用性仍取决于 NAS 型号、DSM 版本以及 Container Manager 支持范围。
部署前准备
- 在 NPS Web 管理中新增客户端,记录 NPS 桥接地址和客户端验证密钥。
- 确认 NAS 能主动访问 NPS 桥接端口。NPC 不需要在路由器上做入站端口映射。
- 在群晖套件中心安装 Container Manager,然后打开“项目”功能。
用 Compose 启动
新建项目并填入以下 Compose 内容,将占位值替换为真实配置:
network_mode: host 让 NPC 直接使用 NAS 的网络。因此隧道的 target_addr=127.0.0.1:<端口> 可以访问监听在 NAS 本机的服务,也可以填写其他局域网设备的 IP 和端口。
生产环境建议将 latest 改为已验证的具体版本标签,避免重建容器时自动跨版本升级。客户端验证密钥不应公开或提交到代码仓库。
使用 npc.conf
需要在 NAS 上声明多条隧道时,先创建例如 /volume1/docker/npc/conf/npc.conf 的配置文件,然后改用:
挂载为只读可以防止容器修改 NAS 上的配置。请确认 Container Manager 能读取该目录;配置中含有 vkey 和其他凭据时,不要给普通 DSM 用户授予读取权限。
验证连接
- 在 Container Manager 中查看
npc容器日志,确认出现成功连接 NPS 的记录。 - 在 NPS Web 管理的客户端列表中确认该客户端在线。
- 从 NAS 上确认目标服务可达。如果目标在另一台局域网设备上,检查该设备的防火墙是否允许来自 NAS 的连接。
- 从公网实际访问隧道,不要只以“客户端在线”判定后端服务可用。
第三方套件
不能使用 Container Manager 的机型,可自行评估“我不是矿神”套件源:https://spk7.imnks.com/ 。该套件源由第三方维护,不属于 NPS 项目的发布和更新链路。安装前应核对支持的 DSM 版本、CPU 架构、包签名和更新来源;对供应链有严格要求时,请使用官方镜像或发布页中与 NAS 架构匹配的 Linux 客户端。