# 构建并启动所有服务
docker-compose up -d
# 查看日志
docker-compose logs -f chat-ai-api
编辑 main.py 中的 CORS 设置,指定具体的允许域名:
app.add_middleware(
CORSMiddleware,
allow_origins=["https://yourdomain.com", "https://www.yourdomain.com"],
allow_credentials=True,
allow_methods=["GET", "POST", "PUT", "DELETE"],
allow_headers=["*"],
)
生产环境建议使用 warning 或 error:
LOG_LEVEL=warning docker-compose up -d
数据已通过 Docker volumes 持久化:
mongodb_dataredis_data如需多个 API 实例,编辑 docker-compose.yml:
services:
chat-ai-api-1:
# ... 配置
ports:
- "8001:8000"
chat-ai-api-2:
# ... 配置
ports:
- "8002:8000"
然后使用 Nginx 进行负载均衡。
# 启动服务
docker-compose up -d
# 停止服务
docker-compose down
# 查看日志
docker-compose logs -f chat-ai-api
# 重启服务
docker-compose restart chat-ai-api
# 进入容器
docker-compose exec chat-ai-api bash
# 查看服务状态
docker-compose ps
# 清理所有数据(谨慎)
docker-compose down -v
# 查看详细日志
docker-compose logs chat-ai-api
# 检查环境变量
docker-compose config
确保 MongoDB 和 Redis 已启动:
docker-compose ps
修改 docker-compose.yml 中的端口映射:
ports:
- "8001:8000" # 改为其他端口
.env 文件不要提交到版本控制