使用 Docker 部署LobeChat服务端数据库版
使用 Docker 部署LobeChat服务端数据库版
当前版本暂不支持Minio私有对象存储,即图片上传功能不可用。官方文档已经足够详细了,这里我简单部署实践一下
准备工作
支持docker环境即可或者k8s环境也行,这里简单操作, 我已经将相关镜像同步到国内。
docker compose 文件
services:
postgresql:
image: ccr.ccs.tencentyun.com/k7scn/postgresql:16
container_name: postgresql
# ports:
# - '5432:5432'
volumes:
- 'postgresql_data:/bitnami/postgresql'
environment:
- 'POSTGRESQL_DATABASE=lobe'
- 'POSTGRESQL_PASSWORD=lobepassw0rd'
minio:
image: ccr.ccs.tencentyun.com/k7scn/minio:2024
container_name: minio
ports:
- '9000:9000'
- '9001:9001'
volumes:
- 'minio_data:/bitnami/minio/data'
environment:
- 'MINIO_ROOT_USER=lobe'
- 'MINIO_ROOT_PASSWORD=lobepassw0rd'
- 'MINIO_DEFAULT_BUCKETS=lobe'
lobe:
image: ccr.ccs.tencentyun.com/k7scn/lobe-chat-database
container_name: lobe
ports:
- '3210:3210'
depends_on:
- postgresql
- minio
environment:
- 'KEY_VAULTS_SECRET=Px/trSNqJMIQ0SbOIDhIpDiNv2eUdNFf8ZUoh76g9+c=' # openssl rand -base64 32
- 'DATABASE_URL=postgres://postgres:lobepassw0rd@postgresql:5432/lobe'
- NEXT_AUTH_SECRET=q5JdZ9lgcOZ79vuJSYAFyOIudCX1CDlMzpnKcGN21 # openssl rand -base64 32
- ACCESS_CODE=hhhhhh # 后续版本可能去掉
- NEXT_AUTH_SSO_PROVIDERS=github
- GITHUB_CLIENT_ID=xxxx # 你的github app client id
- GITHUB_CLIENT_SECRET=xxxxx # 你的github app client secret
- NEXTAUTH_URL=http://100.90.80.25:3210/api/auth # 不用域名访问,一定要配置,具体改成你的ip
# 下述配置暂时不可用,有bug,图片上传功能有问题
- S3_ACCESS_KEY_ID=lobe
- S3_SECRET_ACCESS_KEY=lobepassw0rd
- S3_ENDPOINT=http://100.90.80.25:9000
- S3_BUCKET=lobechat
- NEXT_PUBLIC_S3_DOMAIN=http://100.90.80.25:9000
volumes:
postgresql_data:
driver: local
minio_data:
driver: local
将上述文件保存为lobe.yaml
配置身份验证功能
从官方文档来看,我总结了一下还是GitHub Auth
简单点, 基本没啥门槛。
配置 Github 身份验证服务
- 创建一个新的 Github App, 填写 Github App name、Homepage URL、Callbak URL,主要写Callbak URL地址要对我的示例
http://100.90.80.25:3210/api/auth/callback/github
- 没需求Webhook勾去掉
- 设置读取邮件地址权限及仅个人使用, 公开使用比较麻烦
- 创建成功后,点击「Generate a new client secret」创建客户端 Secret,并保存下来,更新lobe.yaml的
GITHUB_CLIENT_ID
和GITHUB_CLIENT_SECRET
配置对象存储
推荐自建, 但是目前功能不可用,等待官方修复, 近期会修复
使用cloudflare的r2储存上传图片提示错误#3413
启动
docker compose -f lobe.yaml up -d
中间可能lobe启动失败了,稍等片刻或者等pg启动完成后,再执行一下
docker compose -f lobe.yaml up -d
访问
访问地址 http://100.90.80.25:3210
推荐API中转
OpenAI 官方渠道折扣为6.8折,Azure渠道折扣为5折 TurboAI你值得拥有,我已经体验很长时间了,很稳定。