- Add deployment scripts (deploy.sh, test_connection.sh, core/start_server.sh) - Add deployment documentation (DEPLOYMENT_INFO.md, DEPLOYMENT_SUCCESS.md) - Add .env.example configuration template - Add requirements.txt for Python dependencies - Update README.md with latest information - Update core/server.py with improvements 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
5.2 KiB
5.2 KiB
Funstat MCP 部署成功报告
✅ 部署状态:成功
部署时间: 2025-11-02
服务器: 172.16.74.159 (atai)
服务进程: PID 105552
🌐 访问信息
外部访问
内部访问(服务器内)
监听配置
- 监听地址: 0.0.0.0 (所有网络接口)
- 监听端口: 8091
- 协议: HTTP + SSE
✅ 服务状态
# 进程状态
PID: 105552
运行中: ✅
内存使用: 78304 KB
# 网络状态
端口: 0.0.0.0:8091 LISTEN
防火墙: inactive (无限制)
# Telegram 连接
状态: ✅ 已连接
Bot: @openaiw_bot (KT超级数据)
账号: @xiaobai_80 (ID: 7363537082)
代理: socks5://127.0.0.1:1080
📋 部署清单
1. 系统环境
- Ubuntu 24.04.3 LTS
- Python 3.12.3
- v2ray 代理运行中 (端口 1080)
2. 项目部署
- 代码部署到 /home/atai/funstat-mcp
- 虚拟环境创建 (.venv)
- 依赖包安装完成 (mcp, telethon, starlette, uvicorn, PySocks, etc.)
3. 配置文件
- .env 环境变量配置
- Session 文件 (~/telegram_sessions/funstat_bot.session)
- 启动脚本 (start_server_with_env.sh)
4. 服务配置
- 监听地址: 0.0.0.0:8091
- 代理配置: socks5://127.0.0.1:1080
- 自动重启脚本
🔧 管理命令
启动服务
ssh atai@172.16.74.159
cd /home/atai/funstat-mcp/core
bash start_server_with_env.sh
停止服务
ssh atai@172.16.74.159
pkill -f 'funstat.*server.py'
查看日志
ssh atai@172.16.74.159
tail -f /tmp/funstat_sse.log
检查状态
ssh atai@172.16.74.159
ps aux | grep 'python.*server.py' | grep -v grep
ss -tuln | grep 8091
测试访问
# 从服务器内部测试
ssh atai@172.16.74.159
curl -s -o /dev/null -w '%{http_code}\n' http://172.16.74.159:8091/sse
# 从本地测试(如果网络可达)
curl -s -o /dev/null -w '%{http_code}\n' http://172.16.74.159:8091/sse
🔄 重新部署
方法 1: 使用部署脚本(本地执行)
cd /Users/hahaha/projects/funstat-mcp
bash deploy.sh
然后登录服务器启动:
ssh atai@172.16.74.159
cd /home/atai/funstat-mcp/core
bash start_server_with_env.sh
方法 2: 手动部署
# 1. 打包代码
cd /Users/hahaha/projects/funstat-mcp
tar --exclude='.git' --exclude='.venv' -czf /tmp/funstat-mcp.tar.gz .
# 2. 上传到服务器
scp /tmp/funstat-mcp.tar.gz atai@172.16.74.159:/tmp/
# 3. 在服务器上解压并重启
ssh atai@172.16.74.159
cd /home/atai/funstat-mcp
tar -xzf /tmp/funstat-mcp.tar.gz
cd core
bash start_server_with_env.sh
⚠️ 重要说明
网络要求
- ⚠️ 服务器无法直接访问 Telegram,必须通过 v2ray 代理(端口 1080)
- ✅ v2ray 代理已配置并运行正常
- ✅ 服务已配置使用 socks5://127.0.0.1:1080 代理
代理依赖
如果代理服务停止,Telegram 连接将失败。检查代理状态:
ssh atai@172.16.74.159
ps aux | grep v2ray
ss -tuln | grep 1080
Session 文件
- 路径: ~/telegram_sessions/funstat_bot.session
- 大小: 72KB
- 权限: 600 (仅所有者可读写)
- ⚠️ 包含登录凭证,务必保管好
防火墙
- 当前状态: inactive (无防火墙限制)
- 端口 8091 对所有网络开放
- 如需限制访问,可配置 ufw 规则
📊 访问日志示例
服务器日志显示已有外部访问:
INFO: 172.16.72.87:61462 - "GET /sse HTTP/1.1" 406 Not Acceptable
INFO: 172.16.74.159:58984 - "GET /sse HTTP/1.1" 406 Not Acceptable
INFO: 172.16.72.87:61532 - "GET /sse HTTP/1.1" 200 OK
- 406 响应: 正常,表示客户端未发送正确的 Accept 头
- 200 响应: 成功建立 SSE 连接
🛡️ 安全建议
- ✅ Session 文件已设置权限保护 (600)
- ✅ .env 文件包含敏感信息,不要提交到 Git
- ⚠️ 服务监听 0.0.0.0,建议配置防火墙限制访问 IP
- ⚠️ 定期备份 session 文件
- ⚠️ 确保 v2ray 代理服务稳定运行
推荐的防火墙配置(可选)
sudo ufw allow from <your-ip>/32 to any port 8091
sudo ufw enable
📞 技术支持
如遇问题,按以下顺序排查:
-
服务未启动
cd /home/atai/funstat-mcp/core bash start_server_with_env.sh -
无法连接 Telegram
- 检查 v2ray 代理:
ps aux | grep v2ray - 检查代理端口:
ss -tuln | grep 1080 - 查看服务日志:
tail -50 /tmp/funstat_sse.log
- 检查 v2ray 代理:
-
Session 文件锁定
pkill -9 python3 sleep 2 cd /home/atai/funstat-mcp/core bash start_server_with_env.sh -
依赖包缺失
cd /home/atai/funstat-mcp source .venv/bin/activate pip install -r requirements.txt
✅ 验证清单
部署完成后,确认以下项目:
- 服务进程正在运行
- 端口 8091 正在监听
- Telegram 连接成功
- SSE 端点响应正常
- 日志文件正常记录
- 可从外部访问(如果网络可达)
部署完成时间: 2025-11-02
状态: ✅ 成功运行
下次维护: 定期检查日志和代理状态