部署文档
NanoPanel 是单二进制程序,所有前端资源都编译进可执行文件,部署只需要一个文件加一个 systemd 服务。
系统要求
- Linux(x86_64 / aarch64 / armv7),内核 3.10 以上
- systemd(用于开机自启与进程守护)
- 内存 128 MB 起,推荐 512 MB 以上
- 磁盘 50 MB 可用空间
必须在 Linux 上运行;在 macOS / Windows 上启动时,依赖 Linux 的功能(进程、日志、服务)会自动降级。
安装
推荐使用一键脚本,它会自动识别架构、下载最新 Release、安装 systemd 服务并生成初始密码:
curl -fsSL https://npanel.lacs.cc/install.sh | sudo bash
sudo systemctl enable --now nanopanel 国内网络可指定镜像:
export GITHUB_MIRROR=https://ghfast.top/https://github.com
curl -fsSL https://npanel.lacs.cc/install.sh | sudo bash 也可以手动下载二进制,放到 /opt/nanopanel/nanopanel,用 -config 指定配置文件路径。
首次登录
安装完成后浏览器访问 http://设备IP:8080,初始用户名 admin,初始密码在安装输出里,
也会写入 /etc/nanopanel/config.json 的 initial_password 字段(首次登录后请立即修改)。
配置文件
配置位于 /etc/nanopanel/config.json,常用字段:
{
"listen": ":8080",
"username": "admin",
"password_hash": "...",
"secret": "...",
"file_roots": ["/", "/mnt"],
"temp_threshold_c": 75,
"auto_update": true,
"update_check_hour": 4
}
修改密码会在面板内完成(设置 → 安全),同时轮换签名密钥,所有旧登录态立即失效。
忘记密码时删除 password_hash 字段并重启即可重新生成。
开启 HTTPS
设置 → 安全 → 启用 HTTPS,面板会在 /etc/nanopanel/tls 生成 ECDSA P-256 自签证书(10 年有效,
SAN 覆盖主机名与全部网卡 IP),保存后自动重启并监听 8443。也可以命令行生成:
sudo nanopanel -gen-cert -cert-dir /etc/nanopanel/tls 应用商店
应用商店内置 mihomo(含 metacubexd 面板)、AdGuard Home、Tailscale、frp、CUPS、WebDAV、Samba 等应用。 安装前会做架构、内存与磁盘预检;安装后卡片显示运行状态,带网页界面的应用可一键打开。
更新可安装清单:应用商店 → 设置 → 更新清单,从仓库拉取最新 manifest.json。
备份与定时任务
设置 → 维护 → 导出备份,会打包面板配置、应用配置(含 config.env)、mirror.conf 与已安装版本记录,
生成 tar.gz。恢复时上传该文件即可,面板会在恢复后重启。
定时任务支持三种表达式:every:30m(间隔)、hourly:15(每小时第几分钟)、
daily:03:30(每天几点几分),执行结果可推送到 Webhook。
自动更新
面板启动后会定期检查 GitHub Release。发现新版本时推送「版本更新」通知;开启自动更新后,
会在设定的时间自动下载、校验可执行性、备份旧二进制(.bak)、替换并重启,失败自动回滚。
更新源优先使用 GITHUB_MIRROR 环境变量,其次 GitHub 官方,最后 ghfast 镜像。
也可以随时在「关于」页点「立即升级」,或执行 sudo npctl upgrade。
常见问题
面板打不开?
先确认服务状态 systemctl status nanopanel,再看 journalctl -u nanopanel -n 50;
若开了 HTTPS,默认端口会变成 8443,且浏览器需要信任自签证书。
进程 / 日志页面空白?
这些功能依赖 Linux 的 /proc 与 systemd,在非 Linux 环境会自动隐藏数据。
应用装不上?
多为网络问题:确认 /opt/nanopanel/mirror.conf 里的镜像前缀是完整形式
(如 https://ghfast.top/https://github.com),或直接在应用商店里重试。
自动更新一直提示「无法连接更新源」?
仓库尚未发布 Release 时属于预期行为;发布首个 Release 后即自动生效。
在 GitHub Issues 提问,附上设备型号、系统版本与相关日志,会更快定位。