共计 3420 个字符,预计需要花费 9 分钟才能阅读完成。
为了方便更多小白可以顺利的部署和使用,这里借用图像化界面的宝塔软件进行操作,如果有计算机基础的,直接使用命令行可以更快一些
项目参考:github.com/labring/FastGPT
在线体验: fastgpt.run/
代理方案
这里使用:
cloudflare 方案 – 每日免费 10w 次代理请求
参考上篇文章 Gpt 进阶(环境篇):解决 gpt 接口调用,镜像的最全方案(合集版)
环境配置
腾讯云的轻量级应用服务器 + 宝塔 Linux 面板
服务器配置:centos7.9. CPU- 2 核 内存 -4GB, 带宽:8Mbps
1 QQ 邮箱 Code
进入 QQ 邮箱 -> 账号 -> 申请 SMTP 账号; 用于在注册账户
2 宝塔注册地址:
https://www.bt.cn/?invite_code=M19jb2Z4cnM=
3 安装 nginx 和 docker
4 验证安装
docker -v
docker-compose -v
准备文件
FastGPT-main\docs\deploy\fastgpt
fastgpt 文件夹下载下来,压缩,上传
修改 docker-compose.yaml
基本修改后的,todo 是要自己去改的
# 非 host 版本, 不使用本机代理
version: ‘3.3’
services:
pg:
# image: ankane/pgvector:v0.4.2 # dockerhub
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/pgvector:v0.4.2 # 阿里云
container_name: pg
restart: always
ports: # 生产环境建议不要暴露
– 8100:5432
networks:
– fastgpt
environment:
# 这里的配置只有首次运行生效。修改后,重启镜像是不会生效的。需要把持久化数据删除再重启,才有效果
– POSTGRES_USER=fastgpt
– POSTGRES_PASSWORD=1234
– POSTGRES_DB=fastgpt
volumes:
# 刚创建的文件
– ./pg/init.sql:/docker-entrypoint-initdb.d/init.sh
– ./pg/data:/var/lib/postgresql/data
mongo:
# image: mongo:5.0.18
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.18 # 阿里云
container_name: mongo
restart: always
ports: # 生产环境建议不要暴露
– 27017:27017
networks:
– fastgpt
environment:
# 这里的配置只有首次运行生效。修改后,重启镜像是不会生效的。需要把持久化数据删除再重启,才有效果
– MONGO_INITDB_ROOT_USERNAME=username
– MONGO_INITDB_ROOT_PASSWORD=password
volumes:
– ./mongo/data:/data/db
– ./mongo/logs:/var/log/mongodb
fastgpt:
container_name: fastgpt
# image: c121914yu/fast-gpt:latest # docker hub
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:latest # 阿里云
# network_mode: host #
ports:
– 3000:3000
networks:
– fastgpt
depends_on:
– mongo
– pg
restart: always
environment: # 可选的变量,不需要的话需要去掉
– PORT=3000 # 运行的端口地址,如果不是 3000. 需要修改成实际地址。
– DB_MAX_LINK=5 # database max link
# 发送邮箱验证码配置。用的是 QQ 邮箱。参考 nodeMail 获取 MAILE_CODE,自行百度。
– MY_MAIL=54545@qq.com #todo
– MAILE_CODE=1234 #todo
# token 加密凭证 (随便填,作为登录凭证)
– TOKEN_KEY=any
# root key, 最高权限,可以内部接口互相调用
– ROOT_KEY=root_key
# 和上方 mongo 镜像的 username,password 对应
– MONGODB_URI=mongodb://username:password@mongo:27017/?authSource=admin
– MONGODB_NAME=fastgpt
– PG_HOST=pg
– PG_PORT=5432
# 和上方 PG 镜像对应.
– PG_USER=fastgpt
– PG_PASSWORD=1234
– PG_DB_NAME=fastgpt
# oneapi 配置 推荐使用 one-api 管理 key
– ONEAPI_URL=https://xxxxx.cloud.sealos.io/v1
– ONEAPI_KEY=sk-xxxxxx
# openai 相关配置:使用了 oneapi 后,下面只需要填下 OPENAI_BASE_URL (国外可全忽略)
– OPENAIKEY=sk-xxxxx #todo
– OPENAI_BASE_URL=https://api.openai.com/v1 #todo
fastgpt-admin:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-admin:latest
container_name: fastgpt-admin
restart: always
ports:
– 3001:3001
networks:
– fastgpt
depends_on:
– mongo
– fastgpt
environment:
– MONGODB_URI=mongodb://username:password@mongo:27017/?authSource=admin
– MONGODB_NAME=fastgpt
– ADMIN_USER=fastgpt
– ADMIN_PASS=fastgpt
– ADMIN_SECRET=any
– PARENT_URL=http://fastgpt:3000
– PARENT_ROOT_KEY=root_key
keyadmin:
container_name: keyadmin
image: justsong/one-api
restart: always
ports:
– 3002:3000
environment:
– TZ=Asia/Shanghai
volumes:
– /keyadmin:/data
nginx: # 宝塔不需要额外装 nginx
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/nginx:alpine3.17
# image: nginx:alpine3.17
container_name: nginx
restart: always
network_mode: host
volumes:
# 刚创建的文件
– ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
– ./nginx/logs:/var/log/nginx
# https 证书,没有的话不填,对应的 nginx.conf 也要修改
– ./nginx/ssl/docgpt.key:/ssl/docgpt.key
– ./nginx/ssl/docgpt.pem:/ssl/docgpt.pem
networks:
fastgpt:
一键部署
终端执行 run.sh
回到面板查看 docker 镜像安装
访问 ip 的 3000.3001.3002 端口,显示如下
域名添加方式 (自行购买)
使用示例
对话:
知识库:
总结
本文主要掌握云服务器使用;宝塔软件使用;openai 的反向代理;docker 的使用;项目的部署等等;
这个项目知识点能学的还是挺多的,对于学习和体验 ai 的私有数据部署都是一个很好的示例,期待你有一个很好的体验!