安装面板
面板端又称后端/主控端,指 nyanpass 的 backend
程序。
需要注意
- 请勿在中国服务器安装面板端,否则一定会遇到网络问题。
- 面板与 "宝塔/aapanel/1panel" 默认情况下无法共存,除非你精通 nginx 配置,否则请换一台服务器搭建。
- 教程中如果遇到任何目录或者配置文件不存在,请自行创建。
- 请勿不按文档乱来。不懂请问 AI,再不懂请找人代搭。
再次提醒
如果你不知道自己在做什么,请紧跟教程走,不要乱搞。
0 安装依赖
安装 docker & compose
1 获取程序
通过以下命令快速获取 backend
程序。
2 编写配置文件
以下内容编辑为 /opt/backend/config.yml
这是最小配置,完整配置请看这里。
# 数据库使用 sqlite3
database-path: "sqlite3://data.db"
# 或者使用 mysql (请看完整配置)
# 监听地址
# 使 backend 监听在 127.0.0.1:18888 ,本文后续默认这个地址为 backend 程序监听的地址
# 如果无需反代,可以填 0.0.0.0:18888 直接监听在公网
listen: 127.0.0.1:18888
# 授权码
# 建议在配置文件中指定,也可以在命令中使用 -key 指定
key: xxxxxx
3 配置服务与反代
以下内容保存为 /opt/backend/docker-compose.yaml
services:
nya:
image: alpine
network_mode: host
restart: always
volumes:
- .:/opt/backend
working_dir: /opt/backend
command: ./rel_backend
caddy:
image: caddy:2-alpine
network_mode: host
restart: always
volumes:
- .:/opt/backend
- ./caddy:/etc/caddy
- ./caddy_data:/data
以下内容保存为 /opt/backend/caddy/Caddyfile
{
servers {
protocols h1 h2
}
}
改成你的域名 {
## TLS 必须配置,请在下面选择一种配置方法
# TLS 本地证书
# tls /opt/backend/caddy/your.crt /opt/backend/caddy/your.key
# TLS 自动申请(适合 直连面板服务器 的用户)
# tls your@email.com
# TLS 自签(适合套 CDN 加速的用户)
tls internal
# 前端资源
file_server {
root /opt/backend/public
}
# /api/* 反代到 backend
reverse_proxy /api/* http://127.0.0.1:18888 {
trusted_proxies 127.0.0.0/8 173.245.48.0/20 103.21.244.0/22 103.22.200.0/22 103.31.4.0/22 141.101.64.0/18 108.162.192.0/18 190.93.240.0/20 188.114.96.0/20 197.234.240.0/22 198.41.128.0/17 162.158.0.0/15 104.16.0.0/13 104.24.0.0/14 172.64.0.0/13 131.0.72.0/22 2400:cb00::/32 2606:4700::/32 2803:f800::/32 2405:b500::/32 2405:8100::/32 2a06:98c0::/29 2c0f:f248::/32
header_up CF-Connecting-IP {http.request.header.CF-Connecting-IP}
}
}
nginx 提示
如果你使用 nginx 反代,请自行搜索开启 Websocket 的配置,否则探针无法使用。
Cloudflare 提示
如果你按照本教程的 caddy 配置,则需要把 Cloudflare 的 SSL/TLS 模式修改为 Full / 完全
。
4 创建数据库
第一次运行,请初始化数据库:
其中 admin
是默认管理员账户名,可自行修改。
如果无误,运行此命令将输出管理员的帐号与密码。
5 启动
6 设置 DNS 解析
您的域名设置 DNS 解析到您的服务器 IP,一般建议开启 CDN。
7 使用
使用浏览器访问 你的域名
,直接登录管理员帐号即可。
访问须知
由于网站使用了某些前端资源,“墙内”的访问质量可能不佳。我们强烈建议“墙内用户”在代理环境下打开您的网站。