发布时间:2025-06-24 18:52:57  作者:北方职教升学中心  阅读量:878


支持高并发

  • 客户端数据库 (默认):你的聊天记录、多模态、

    特性

    客户端数据库 (IndexedDB)

    服务端数据库 (PostgreSQL)

    存储位置

    浏览器本地

    服务器

    访问权限

    仅限本地

    多用户共享

    数据量

    用途

    个人单浏览器

    多地方共享使用

    特点

    简单、

    为什么要部署服务端数据库版?

    1panel 默认带有客户端的一键安装,安装方式非常简单,点击1panel的应用商店-全部-AI/大模型-LobeChat-端口外部访问-安装(如果你使用的是openai则需要设置一下对应的数据)http://ip:40247/ 即可访问

    默认安装的是客户端数据库模式,它与服务端数据库模式有什么区别?

    先说以下两种数据库类型的区别,你就懂了。

    它的特性?

    • 多模型服务商支持;

    • 支持本地大语言模型 (LLM);

    • 模型视觉识别 (Model Visual);

    • TTS & STT 语音会话;

    • Text to Image 文生图;

    • 插件系统 (Function Calling);

    • 助手市场 (GPTs);

    • 支持本地 / 远程数据库;

    • 支持多用户管理;

    • 渐进式 Web 应用 (PWA);

    • 移动设备适配;

    • 自定义主题。可扩展的(function call)插件系统,一键免费拥有你自己的 ChatGPT/Gemini/Claude/Ollama 应用。设置等都存储在你的浏览器里,换台电脑就没了,数据无法共享。设置等都存储在服务器上,你可以用任何电脑登录 LobeChat 访问你的数据,数据可以跨设备共享。

    • 服务端数据库 (DB 版):你的聊天记录、

    安装需要什么前提?

    • docker手动安装:LobeChat 数据库版本自身 lobehub/lobe-chat-database

    • docker手动安装:带有 PGVector 插件的 PostgreSQL 数据库 pgvector/pgvector:pg17

    • 1panel一键安装:支持 S3 协议的对象存储服务 自建s3存储:MinIO

    • 1panel一键安装(也可以docker手动安装):受 LobeChat 支持的 SSO 登录鉴权服务 自建sso服务casdoor

    官方说明至少拥有如下四个服务,咱们一步步看

    本文将讲解通过1panel如何图形化 搭建LobeChat服务端数据库版本,让我们开始吧~

    通过1panel图形化手动安装LobeChat 服务端数据库版本

    如果你会docker 请看官方教程,而不是此教程,此教程使用的是1panel图形化操作,对于不懂的人来说看的懂,但对于懂的人过于繁琐,docker只需要一句代码

    官方教程:https://lobehub.com/zh/docs/self-hosting/server-database/docker

    首先是安装带有pgvector插件的PostgreSQL数据库

    我们根据官方教程,使用docker容器新建一个数据库。

    肯定有小伙伴疑惑,为什么不使用1panel的一键构建呢? 1Panel 的一键构建是不预装 pgvector 插件,这里我们手动安装,图形化也非常简单

    拉取pgvector镜像

    • 点击容器-点击镜像-点击拉取镜像

    • 输入镜像名(pgvector/pgvector:pg17)官方教程用的16哦

    • 点击拉取

    请注意,拉取成功的镜像,并不是你当前拉取时间来的,而是镜像本身的更新时间

    创建PostgreSQL容器

    • 名称:my-postgres

    • 镜像名: pgvector/pgvector:pg17

    • 端口: 暴露端口:5432需要注意如果占用,要修改服务器端口

    • 网络:选择默认的1panel即可

    • ipv4172.18.0.250请注意你自己的地址,为了防止冲突,我使用最后面的几个地址

    • 挂在卷:/opt/1panel/apps/postgresql/my-postgre/data 容器目录:/var/lib/postgresql/data

    • 环境变量:用户名,密码,挂载目录

    POSTGRES_USER=sky POSTGRES_PASSWORD=mysecretpasswordPGDATA=/var/lib/postgresql/data

    检测数据库是否可用

    通过1panel内置的数据库功能,添加远程服务器,点击有验证,可用

    新建一个数据库待会创建时要用

    连接PostgreSQL注意的地方

    • 需关闭防火墙或者要手动开放端口(这个很重要,不然通过内网的ip是连不上的哦)

    支持 S3 协议的对象存储服务-minlO

    如果你已经有了s3对象存储,可以跳过当前这个步骤

    它的使用方式非常简单,我们只需要安装-创建,更改权限,和秘钥~

    这里我们使用1panel一键安装

    • 应用商店-MinIO

    • 如果端口占用请修改端口,我这里使用的是端口:9008-API端口:9009

    minIO配置

    这是LobeChat所需要的配置,由于我这边是内网使用,并不使用外网,因此我只需要新建一个桶,和对应的秘钥即可

    • ACCESS_KEY

    • SECRET_ACCESS_KEY

    • API域名

    • 桶名称

    • 访问域名

    # S3 相关S3_ACCESS_KEY_ID=xxxxxxxxxxS3_SECRET_ACCESS_KEY=xxxxxxxxxx# 用于 S3 API 访问的域名S3_ENDPOINT=https://xxxxxxxxxx.r2.cloudflarestorage.comS3_BUCKET=lobechat# 用于外网访问 S3 的公共域名,需配置 CORSS3_PUBLIC_DOMAIN=https://s3-for-lobechat.your-domain.com# S3_REGION=ap-chengdu # 如果需要指定地域
    新建一个桶
    • Buckets-Create Bucket-输入Name-Create Bucket

    桶的访问权限改为公共

    不设为公共则无法访问

    • Buckets-lobechat-点击Access Policy-选择Public

    添加图片注释,不超过 140 字(可选)

    新建一个秘钥

    将会得到一个秘钥

    Access Key:E4c8Q1iXg625sMBUJ0B5

    Secret Key:hX7T0kGl0Pdg9v2B93DgvOk9MayNHhP9mopGUPuJ

    访问域名则为你的api域名端口:ip+端口

    我这里是http://10.255.255.242:9009

    检测minlo是否可用

    通过halo程序添加存储检测

    连接minlo注意的地方

    • 端口开放防火墙依旧是首要操作的地方

    • 自用则不需要设置过多,如果你在公网使用,请设置好权限,位置,用户等相关操作

    • 记住你的桶名,下面要用

    • 记住你的ID秘钥

    受 LobeChat 支持的 SSO 登录鉴权服务-casdoor

    1panel一键安装(一)

    • 应用商店-casdoor

    • 如果端口占用请修改端口,我这里使用的是端口:8000

    • 端口外部访问-安装

    需要注意的是,由于我的上方安装的是PostgreSQL数据库,它并不能搭配使用1panel一键安装

    如果你的设备资源有限,我建议手动安装casdoor,如果你本地设备刚刚的,可以使用mysql一键安装,比较省事,

    拉取casdoor镜像(二)

    如果你使用的是一键安装,这一块不用看

    • 点击容器-点击镜像-点击拉取镜像

    • 输入镜像名(casbin/casdoor

    • 点击拉取

    这是官方用的容器的版本,也是我现在使用的

    创建casdoor容器
    • 数据库:手动新建一个PostgreSQL数据库,待会环境变量有用 用户名:mycasdoor 名称:mycasdoor 密码:mEjT7KnFfAW44knZ

    • 名称:my-casdoor

    • 镜像名: casbin/casdoor:版本

    • 端口: 默认暴露端口:8000需要注意如果占用,要修改服务器端口 这里演示更改为8001

    • 网络:选择默认的1panel即可

    • ipv4172.18.0.253请注意你自己的地址,为了防止冲突,我使用最后面的几个地址

    • 挂载:本机目录:/opt/1panel/apps/casdoor/mycasdoor/conf 容器目录:/conf需要注意是本机目录,手动创建的不要重复

    • 环境变量:数据库类型,数据库名称,数据库用户名,密码

    RUNNING_IN_DOCKER=true  #告诉他是容器# 用户名,密码,地址,端口,ssl,名称dataSourceName=user=mycasdoor password=mEjT7KnFfAW44knZ host=10.255.255.242 port=5432 sslmode=disable dbname=mycasdoor#数据库名称dbName=mycasdoor#数据库类型driverName=postgres
    访问界面检测可用
    • 默认登录用户名:admin 默认密码:123

    新建一个casdoor应用

    官方教程:https://lobehub.com/zh/docs/self-hosting/advanced/auth/next-auth/casdoor

    添加一个应用 身份认证-应用-添加

    • 名称:LobeChat

    • 显示名称:LobeChat

    • 客户端ID:86094cf0438b7df7d2db(自定生成的不需要填写,下面要用)

    • 客户端秘钥:0eb22f536455ddfdde06639652a8763ac3862db7(自定生成的不需要填写,下面要用)

    • 定向 URLs:http://10.255.255.242:3210/api/auth/callback/casdoor(LobeChat服务地址,如果你改了端口请注意修改)

    保存即可,其他什么都可以不用设置

    搭建好后casdoor注意的地方
    • 端口开放防火墙,不开放无法正常访问

    开始安装LobeChat 数据库版

    拉取lobechat镜像

    和上面一样的步骤

    • 点击容器-点击镜像-点击拉取镜像

    • 输入镜像名( lobehub/lobe-chat-database)不加版本默认最新版

    • 点击拉取

    创建lobe-chat-database容器

    官方教程:https://lobehub.com/zh/docs/self-hosting/server-database/docker

    • 名称:my-lobe-chat-database

    • 镜像名: lobehub/lobe-chat-database:latest

    • 端口: 默认暴露端口:3210需要注意如果占用,要修改服务器端口

    • 网络:选择默认的1panel即可

    • ipv4172.18.0.251请注意你自己的地址,为了防止冲突,我使用最后面的几个地址

    • 环境变量必填项

    #你LobeChat访问的地址,请注意你的端口号是否正确APP_URL=http://10.255.255.242:3210#DB必须的环境变量# 用于加密敏感信息的密钥,可以使用 openssl rand -base64 32 生成KEY_VAULTS_SECRET='dvy9O/6gMcy8k7Jnfbb1mI8he03efDQ6m0iknR8XppQ='# Postgres 数据库连接字符串# 格式:postgres://username:password@host:port/dbname,如果你的 pg 实例为 Docker 容器,请使用容器名,当然可以内网访问的也可以使用内网ipDATABASE_URL=postgres://mylobehub:4jMwz6Gr43SafXMX@my-postgres:5432/mylobehub#SSO必须的环境变量#加密敏感信息的秘钥NEXT_AUTH_SECRET=3904039cd41ea1bdf6c93db0db96e250#你使用的sso的类型NEXT_AUTH_SSO_PROVIDERS=casdoor#不同类型的变量名称不同,请注意,下面是客户端ID和客户端秘钥AUTH_CASDOOR_ID=86094cf0438b7df7d2dbAUTH_CASDOOR_SECRET=0eb22f536455ddfdde06639652a8763ac3862db7#填写casdoor访问地址即可AUTH_CASDOOR_ISSUER=http://10.255.255.242:8000#填写的lobechat的地址,请注意你的端口,要和前面APP_URL一样哦NEXTAUTH_URL=http://10.255.255.242:3210/api/auth#debug,用来看日志反馈NEXT_AUTH_DEBUG=1#s3必须的环境变量#idS3_ACCESS_KEY_ID=E4c8Q1iXg625sMBUJ0B5#秘钥S3_SECRET_ACCESS_KEY=hX7T0kGl0Pdg9v2B93DgvOk9MayNHhP9mopGUPuJ#minIO访问的API地址,端口更改了请注意S3_ENDPOINT=http://10.255.255.242:9009#s3桶名S3_BUCKET=lobechat#s3访问地址,我这里没有做操作依旧是api的地址S3_PUBLIC_DOMAIN=http://10.255.255.242:9009

    查看日志是否安装成功

    访问服务是否安装成功

    登录的账号密码为casdoor中的账号密码,其他功能,请自己尝试吧~

    易用

    功能强大、

    LobeChat

    它是什么?

    LobeChat 是一个现代化设计的开源 ChatGPT/LLMs 聊天应用与开发框架,支持语音合成、