飞书ChatGPT集成项目Docker部署指南
2025-07-08 01:07:21作者:田桥桑Industrious
本文详细讲解如何使用Docker Compose部署Leizhenpeng/feishu-chatgpt项目,这是一个将ChatGPT能力集成到飞书平台的解决方案。通过本文,您将了解如何配置和运行这个服务。
项目概述
该项目通过Docker容器化方式,在飞书平台上搭建ChatGPT机器人服务。核心功能包括:
- 飞书应用与ChatGPT的无缝对接
- 多OpenAI API Key负载均衡
- 灵活的HTTPS配置选项
- 网络中转支持
部署前准备
在开始部署前,请确保您已准备好以下信息:
- 飞书应用的App ID、App Secret、Encrypt Key和Verification Token
- 有效的OpenAI API Key(支持多个Key)
- 服务器环境已安装Docker和Docker Compose
Docker Compose配置详解
基础服务配置
version: '3.3'
services:
feishu-chatgpt:
container_name: feishu-chatgpt
build:
context: .
dockerfile: Dockerfile
ports:
- "9000:9000/tcp"
这部分定义了服务的基本配置:
- 使用Docker Compose 3.3版本
- 服务名称为feishu-chatgpt
- 基于当前目录的Dockerfile构建镜像
- 将容器内的9000端口映射到主机的9000端口
环境变量配置
环境变量是配置该服务的核心部分:
environment:
- APP_ID=cli_axxx
- APP_SECRET=xxx
- APP_ENCRYPT_KEY=xxx
- APP_VERIFICATION_TOKEN=xxx
- BOT_NAME=chatGpt
- OPENAI_KEY=sk-xxx,sk-xxx,sk-xxx
- HTTP_PORT=9000
- HTTPS_PORT=9001
- USE_HTTPS=false
- CERT_FILE=cert.pem
- KEY_FILE=key.pem
- API_URL=https://api.openai.com
- NETWORK_TRANSIT
关键配置项说明:
-
飞书应用凭证
- APP_ID: 飞书应用的唯一标识
- APP_SECRET: 应用密钥
- APP_ENCRYPT_KEY: 消息加密密钥
- APP_VERIFICATION_TOKEN: 验证令牌
- BOT_NAME: 机器人在飞书中显示的名称
-
OpenAI配置
- OPENAI_KEY: 支持多个API Key,用逗号分隔,实现负载均衡
- API_URL: 默认为官方API地址,可替换为自定义中转
-
服务器配置
- HTTP_PORT/HTTPS_PORT: 服务监听端口
- USE_HTTPS: 是否启用HTTPS
- CERT_FILE/KEY_FILE: SSL证书文件路径
-
网络配置
- NETWORK_TRANSIT: 网络中转设置,留空表示不使用中转
部署步骤
- 创建docker-compose.yaml文件,填入上述配置
- 替换所有xxx占位符为实际值
- 在文件所在目录执行:
docker-compose up -d
- 检查日志确认服务正常运行:
docker logs feishu-chatgpt
高级配置建议
-
HTTPS配置:
- 将USE_HTTPS设为true
- 准备有效的SSL证书
- 通过volumes挂载证书文件
-
多API Key负载均衡:
- 填入多个有效的OpenAI API Key
- 系统会自动轮询使用这些Key
-
配置持久化: 取消注释volumes部分,将配置文件挂载到容器外:
volumes: - ./code/config.yaml:/app/config.yaml:ro
常见问题排查
-
端口冲突:
- 确保主机9000端口未被占用
- 或修改ports映射为其他端口
-
飞书验证失败:
- 检查APP_ID等凭证是否正确
- 确保飞书应用配置的回调地址与部署地址一致
-
OpenAI API不可用:
- 检查API Key是否有效
- 如有必要,配置NETWORK_TRANSIT
安全建议
- 不要将敏感信息直接写入docker-compose.yaml
- 考虑使用Docker secrets或环境变量文件管理凭证
- 生产环境务必启用HTTPS
- 定期轮换API Key
通过以上配置和说明,您应该能够成功部署飞书ChatGPT集成服务。根据实际需求调整配置参数,即可获得稳定高效的智能对话体验。