推广

推荐 链接 教程
云狐不限时VPN 注册链接 不限时翻墙机场推荐,众多不限时套餐|大流量套餐|免费试用|畅享4K
长桥证券开户 文字教程 【视频教程】-长桥证券新加坡版开户入金教程:港美股永久免佣+0门槛开户
欧易开户教程 注册链接 【视频教程】-币圈小白入门,从零开始购买加密货币,欧易如何交易加密货币?

背景

由于众所周知的原因,ChatGPT在中国无法访问,如果你有经常使用ChatGPT的需求怎么办呢?即使你使用了科学上网,由于你订阅的机场使用同一IP的人数过多,会触发ChatGPT的风险值然后封号。前段时间就封了很多ChatGPT账号。

我这里教大家轻松使用VPS搭建ChatGPT网站,在国内无需科学上网随时随地访问ChatGPT。还可以分享给朋友使用。

界面效果

pc

云服务器

想要搭建自己的ChatGPT网站,我们需要一台境外的云服务器。

如果没有云服务器的小伙伴,我这里推荐一家便宜的云服务器。

点此链接注册购买有优惠http://bit.ly/3GlfucW

购买时输入RAKBL9优惠码有9折优惠。

建议选择系统:Ubuntu 20.04或者Ubuntu 22.04

最便宜的VPS只需要3美金,当然,如果你的预算充足,我推荐你直接购买云服务器,会有更好的机器配置,每个月也只需要7美金左右。

raksmart

注册

点此链接注册购买有优惠http://bit.ly/3GlfucW

点击右上角的注册按钮: register

然后填写个人信息即可注册,非常方便。

邮箱地址就是你的登录邮箱。

购买

你可以根据需求选择区域购买云服务器,可以看到云服务器每个月只需要7美刀左右,非常便宜。

如果你需要更好的配置,也可以选择升级处理器和内存。

操作系统选择 Ubuntu 最新的版本, Ubuntu-20.04 或者 Ubuntu-22.04 都可以。

buy

付款

付款界面输入优惠码:RAKBL9 点击验证,即可享受9折优惠。

voucher

云服务器

我们进入云服务器信息界面,记住 IP,密码,和端口号,用户名默认是 root,购买成功后也会收到邮件,查看邮件确认具体的信息。

server

新增安全组策略

如果端口不是默认的22号端口,需要把端口添加到安全组策略里面,这样才能开放端口访问。

safe

Windows登录

Putty下载地址:https://www.putty.org

输入IP+端口: putty

输入账号+密码: password

MacOS/Linux登录

# -p 是端口号,如果是22默认端口号则不需要输入
# root是用户名,默认分配的用户名是root
ssh -p 13647 root@137.175.50.252
# 输入密码

获取API Keys教程

API key

需要一个chatGPT账号并生成一个API Key,这个API secret Key是为了验证你的身份。

这个非常简单,我们打开openai的平台地址:https://platform.openai.com/

登录之后点击右上角的头像,点击Manage Account->API Keys->Create New Secret Key, 然后复制下来保存备用。

key

access token

如果没有API keys或者额度用完了,可以使用access token,限制是同时只能有一个人提问,Token一个月过期,一个月后需要重新获取。https://chat.openai.com/api/auth/session

token

部署教程

到此为止我们有了Linux的Ubuntu操作系统,也有了API Key,可以来部署我们的ChatGPT网站了。

部署ChatGPT网站非常简单,只需要执行下面的几个命令安装docker然后下载,运行即可。

附: Docker Hub地址:https://hub.docker.com/r/techxiaofei/chatgpt-web

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 更新包管理器
sudo apt-get update

# 安装docker
apt install docker.io

# 下载docker镜像
docker pull techxiaofei/chatgpt-web:latest

# 给镜像打标签
docker tag techxiaofei/chatgpt-web chatgpt-web

# 后台运行,可修改主机端口 比如:80->8080,3002是容器端口,不可修改
# your_api_key替换成你的API Key
docker run --name chatgpt-web -d -p 0.0.0.0:80:3002 --env OPENAI_API_KEY=your_api_key chatgpt-web

# 后台运行,带密码访问
# 添加环境变量方式: --env KEY=XXX
docker run --name chatgpt-web -d -p 0.0.0.0:80:3002 --env OPENAI_API_KEY=your_api_key --env AUTH_SECRET_KEY=techxiaofei chatgpt-web

# 停掉进程(如需重启)
docker stop chatgpt-web
docker rm chatgpt-web
环境变量名称 必填 备注
OPENAI_API_KEY OpenAI API 二选一 使用 OpenAI API 所需的 apiKey (获取 apiKey)
OPENAI_ACCESS_TOKEN Web API 二选一 使用 Web API 所需的 accessToken (获取 accessToken)
AUTH_SECRET_KEY 可选 访问权限密钥
MAX_REQUEST_PER_HOUR 可选 每小时最大请求次数,可选,默认无限
TIMEOUT_MS 可选 超时时间,单位毫秒
OPENAI_API_BASE_URL 可选,OpenAI API 时可用 API接口地址
OPENAI_API_MODEL 可选,OpenAI API 时可用 API模型
API_REVERSE_PROXY 可选,Web API 时可用 Web API 反向代理地址 详情
SOCKS_PROXY_HOST 可选,和 SOCKS_PROXY_PORT 一起时生效 Socks代理
SOCKS_PROXY_PORT 可选,和 SOCKS_PROXY_HOST 一起时生效 Socks代理端口
HTTPS_PROXY 可选 HTTPS 代理,支持 http,https, socks5

绑定域名

如果你有域名,可以直接绑定到你的公网IP上,既可以绑定顶级域名也可以绑定到二级域名

只需要在域名解析商添加一条A记录即可。我这里使用的cloudflare,如果你使用的其它域名解析商,也是一样的。

顶级域名

使用 http://example.com 就可以访问了。 domain1

二级域名

使用 http://chat.example.com 就可以访问了。 domain2

更多配置

定制编译

当然如果你想要更加灵活的控制你的网站,比如修改标题,修改密码文本提示头像,名称,描述 等等。 需要自己下载源码编译。

需要使用源码修改后重新编译镜像。

注意:

  • 头像,名称,描述目录:src/store/modules/user/helper.ts
  • 标题目录:index.html
  • 密码文本提示目录:src/locales/zh-CN.ts

编译命令

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# 下载源码
git clone https://github.com/techxiaofei/chatgpt-web.git
cd chatgpt-web

# 在这里修改你需要的内容
# 头像,名称,描述目录:`src/store/modules/user/helper.ts`
# 标题目录:`index.html`
# 密码文本提示目录:`src/locales/zh-CN.ts`

# 切换root权限
sudo su
# 更新系统包列表
sudo apt-get update
# 安装nodejs
apt install nodejs -y

# 安装node包管理器
apt install npm -y

# 升级包管理工具upgrade
npm install -g n

# 升级到node.js最新稳定版
n stable

hash -r

# 查看版本,如果是 18及以上就可以了
node -v

# 安装pnpm
npm install pnpm -g

# 编译
pnpm bootstrap

pnpm build

docker build -t chatgpt-web .

# 后台运行,可修改主机端口 比如:80->8080,3002是容器端口,不可修改
# your_api_key替换成你的API Key
docker run --name chatgpt-web -d -p 0.0.0.0:80:3002 --env OPENAI_API_KEY=your_api_key chatgpt-web

# 停掉进程(如需重启)
docker stop chatgpt-web
docker rm chatgpt-web

# 完全删除镜像
docker rmi chatgpt-web

上传到docker命令

可选,如果你需要上传到docker服务器在其他机器部署或者分享给别人。

1
2
3
4
5
6
# docker登录,输入docker账号密码
docker login
# 给镜像打标签
docker tag chatgpt-web:latest techxiaofei/chatgpt-web:latest
# 上传镜像
docker push techxiaofei/chatgpt-web:latest

后记

现在你应该能轻轻松松在国内的任意网络下访问chatgpt了,赶紧分享给你的朋友使用吧。

视频教程

本篇博客的视频教程首发于 Youtube:科技小飞哥,加入 电报粉丝群 获得最新视频更新和问题解答。