安装面板
面板端又称后端/主控端,指 nyanpass 的 backend
程序。
需要注意
- 请勿在中国服务器安装面板端,否则一定会遇到网络问题。
- 面板与 "宝塔/aapanel/1panel" 默认情况下无法共存,除非你精通 nginx 配置,否则请换一台服务器搭建。
- 教程中如果遇到任何目录或者配置文件不存在,请自行创建。
再次提醒
- 如果你不知道自己在做什么,请紧跟教程走,不要乱搞(特别是不要想着用宝塔/aapanel/1panel)。
- 如果你既没有技术顾问,又实在无法离开宝塔/aapanel/1panel,如果你找到了某些第三方教程宣称能使用这些面板搭建ny,请关闭本页面,紧跟你的第三方教程走,搭建和使用出问题请找写教程的人。
0 安装依赖
安装 docker & compose
1 获取程序
通过以下命令快速获取 backend
程序。
2 编写配置文件
以下内容编辑为 /opt/backend/config.yml
这是最小配置,完整配置请看这里。
# 数据库使用 sqlite3
database-path: "sqlite3://data.db"
# 或者使用 mysql (请看完整配置)
# 监听地址
# 使 backend 监听在 127.0.0.1:18888 ,本文后续默认这个地址为 backend 程序监听的地址
listen: 127.0.0.1:18888
# 授权码
# 建议在配置文件中指定,也可以在命令中使用 -key 指定
key: xxxxxx
?
- 授权码的格式一般是
31169bec-5dd9-4e56-975d-d1147d683b1f
这样的 UUID,而非Nya
开头的一次性时长代码。 - 授权码绑定的是授权域名、到期时间等信息,请妥善保存您的授权码,不要泄漏。
- 如果您还没有授权码,请看 nyanpass 频道内的开户流程(可以自助开户)。
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
logging:
driver: "json-file"
options:
max-size: "50m"
max-file: "3"
caddy:
image: caddy:2-alpine
network_mode: host
restart: always
volumes:
- .:/opt/backend
- ./caddy:/etc/caddy
- ./caddy_data:/data
logging:
driver: "json-file"
options:
max-size: "50m"
max-file: "3"
以下内容保存为 /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 使用
使用浏览器访问 你的域名
,直接登录管理员帐号即可。
访问须知
由于网站使用了某些前端资源,“墙内”的访问质量可能不佳。我们强烈建议“墙内用户”在代理环境下打开您的网站。