本教程将指导你如何从零开始部署 DeepSeek Chat Assistant,包括虚拟环境配置、依赖安装、运行应用,以及使用 systemd 实现开机自启和后台运行。
1. 准备工作
1.1 克隆项目
git clone https://github.com/JiexuantroNic/deepseek_client.git
cd deepseek_client
1.2 安装 Python 和 pip
确保你的系统已安装 Python 3.8+:
python3 --version # 检查 Python 版本
pip3 --version # 检查 pip 版本
如果未安装,运行:
sudo apt update && sudo apt install python3 python3-pip # Ubuntu/Debian
# 或
sudo yum install python3 python3-pip # CentOS/RHEL
2. 创建 Python 虚拟环境
2.1 创建虚拟环境
python3 -m venv venv
2.2 激活虚拟环境
source venv/bin/activate # Linux/macOS
# 或
.\venv\Scripts\activate # Windows (PowerShell)
激活后,终端提示符会显示 (venv),表示已进入虚拟环境。
3. 安装依赖
3.1 安装项目依赖
pip install -r requirements.txt
(如果没有 requirements.txt,手动安装依赖):
pip install gradio requests python-dotenv tiktoken
3.2 配置环境变量
复制 .env.example 并填写你的 DeepSeek API Key:
cp .env.example .env
nano .env
填入你的 API 密钥:
DEEPSEEK_API_KEY=your_api_key_here
4. 运行应用
4.1 测试运行
python server.py
访问 http://localhost:7860 查看是否正常运行。
4.2 生产环境运行(Gunicorn + Uvicorn)
pip install gunicorn uvicorn
gunicorn -b 0.0.0.0:7860 -w 4 -k uvicorn.workers.UvicornWorker server:demo
• -b 0.0.0.0:7860:绑定所有网络接口,端口 7860
• -w 4:启动 4 个工作进程(建议与 CPU 核心数相同)
• -k uvicorn.workers.UvicornWorker:使用 Uvicorn 提高异步性能
5. 配置 Systemd(实现开机自启 & 后台运行)
5.1 创建 Systemd 服务文件
sudo nano /etc/systemd/system/deepseek-chat.service
粘贴以下内容(按需修改路径):
[Unit]
Description=DeepSeek Chat Assistant
After=network.target
[Service]
User=your_username
Group=your_groupname
WorkingDirectory=/path/to/deepseek_client
Environment="PATH=/path/to/deepseek_client/venv/bin"
ExecStart=/path/to/deepseek_client/venv/bin/gunicorn \
-b 127.0.0.1:7860 \
-w 4 \
-k uvicorn.workers.UvicornWorker \
server:demo
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
(替换 /path/to/deepseek_client 为你的项目路径)
5.2 启动服务
sudo systemctl daemon-reload
sudo systemctl enable deepseek-chat # 开机自启
sudo systemctl start deepseek-chat # 立即启动
5.3 检查服务状态
sudo systemctl status deepseek-chat
如果运行正常,输出应显示 active (running)。
5.4 查看日志
journalctl -u deepseek-chat -f # 实时日志
journalctl -u deepseek-chat -n 100 # 最近 100 行日志
6. 访问应用
• 本地访问:http://localhost:7860
• 公网访问(需 Nginx 反向代理或开放端口):
sudo ufw allow 7860
# 如果使用 UFW 防火墙
然后在浏览器访问 http://你的服务器IP:7860。
7. 常见问题
Q1: 无法连接到 DeepSeek API
✅ 检查 .env 文件是否填写正确的 API Key
✅ 运行 curl https://api.deepseek.com/v1/chat/completions 测试 API 连通性
Q2: Systemd 服务启动失败
✅ 检查 WorkingDirectory 和 ExecStart 路径是否正确
✅ 查看日志:journalctl -u deepseek-chat -f
Q3: 端口被占用
✅ 检查端口 7860 是否被其他程序占用:
sudo lsof -i :7860
如果有冲突,修改 gunicorn 的 -b 参数或杀死占用进程:
sudo kill -9 $(sudo lsof -t -i :7860)
总结
✅ 虚拟环境 → 安装依赖 → 配置 .env → 运行 → Systemd 守护进程
现在你的 DeepSeek Chat Assistant 已成功部署,并会在服务器重启后自动运行! 🚀