🚀VPS部署PandoraNext

Lesley

Tech|2023-11-21|Last edited: 2024-1-22|
type
Post
status
Published
date
Nov 21, 2023
slug
pandoranext
summary
tags
VPS
ChatGPT
Learning
category
Tech
icon
password

前期准备

拉取仓库

notion image

解压文件夹并按需修改下列文件

notion image

获取license_id

  1. 需要一个注册一年以上的github账户
  1. https://dash.pandoranext.com绑定
  1. 按照网站提示在VPS上输入代码获取license_id
  1. 将获取的license_id填入config.json
notion image

按需求修改data文件夹中的config.json文件

作者备注:
  • bind指定绑定IP和端口,在docker内,IP只能用0.0.0.0,否则映射不出来。
  • 如果你不打算套nginx等反代,bind参数的IP请使用0.0.0.0!!!
  • timeout是请求的超时时间,单位为
  • proxy_url指定部署服务流量走代理,如:http://127.0.0.1:8888socks5://127.0.0.1:7980
  • license_id指定你的License Id,参考下面的
  • public_share对于GPT中创建的对话分享,是否需要登录才能查看。为true则无需登录即可查看。
  • site_password设置整站密码,需要先输入这个密码,正确才能进行后续步骤。充分保障私密性。
  • setup_password定义一个设置密码,用于调用/setup/开头的设置接口,为空则不可调用。
  • server_tokens设置是否在响应头中显示版本号,true显示,false则不显示。
  • server_mode默认为web模式,新增proxy模式,可以将你部署的服务当作一个ChatGPT接口反代使用。会话额度消耗为4倍,无并发限制。
  • captcha配置一些关键页面的验证码。
    • provider验证码提供商,支持:recaptcha_v2recaptcha_enterprisehcaptchaturnstilefriendly_captcha
    • site_key验证码供应商后台获取的网站参数,是可以公布的信息。
    • site_secret验证码供应商后台获取的秘密参数,不要公布出来。有些供应商也称作API Key
    • site_login是否在全站密码登录界面显示验证码,truefalse
    • setup_login是否在设置入口登录界面显示验证码,truefalse
    • oai_username是否输入用户名界面显示验证码,truefalse
    • oai_password是否在输入登录密码界面显示验证码,truefalse
  • whitelist邮箱数组指定哪些用户可以登录使用,用户名/密码登录受限制,各种Token登录受限。内置tokens不受限。
  • whitelistnull则不限制,为空数组[]则限制所有账号,内置tokens不受限。

tokens.json文件

作者备注:
  • token支持示例文件中所写的所有类型。session tokenrefresh token可自动刷新。
  • 每个key被称为token key,可在登录框作用户名输入。如上:test-1test-2等。
  • 如果设置了password则输入完token key进入输入密码页面输入匹配。
  • 如果设置sharedtrue,则这个账号会出现在/shared.html中,登录页面会出现它的链接。
  • 如果设置sharedtrue,则这个账号不能再在用户名登录框进行登录。
  • /shared.html中的账号和共享站功能相同,可以自行设置隔离密码进行会话隔离。
  • plus用来标识/shared.html上账号是否有金光,没有其他作用。
  • show_user_info表示/shared.html共享时是否显示账号邮箱信息,GPTs建议开启。
这个文档设置的是共享站的信息,如果是个人使用可以直接把"shared": true改为false

将上述所有文件上传至vps的data文件夹

notion image
notion image

输入指令

反代设置

Cloudflare配置DNS

  1. 打开你托管在cloudflare上面的域名,点击DNS设置添加记录
  1. 添加A类型,名称chat(或其他自定义英文),内容为VPS的IP地址,代理状态仅DNS,TTL自动→保存
  1. SSL/TLS设置加密模式为完全(严格),并设置边缘证书确保状态有效

安装Caddy

注:这一步可能会涉及出现图形界面的操作,请咨询ChatGPT如何选择

配置Caddy

创建一个 Caddyfile 来配置你的服务器。在 /etc/caddy/Caddyfile 中添加以下内容:

启动Caddy

访问PandoraNext

现在,你应该可以通过 https://chat.你的域名 访问 PandoraNext 了

更新项目

更新配置文件(config.json, token.json)

  1. 在config.json中设置setup_password为非空,例如 mihayoudaobi
  1. 浏览器打开:<Base URL>/setup,其中<Base URL>是你部署服务的地址。

参考链接:

Loading...