Deepseek本地部署全攻略:Linux服务器+Mac远程访问
2025.09.25 19:01浏览量:2简介:本文详细指导如何在Linux服务器上部署Deepseek,并通过Mac实现远程Web-UI访问,涵盖环境准备、依赖安装、服务配置及安全优化,适合开发者与企业用户参考。
一、部署前环境准备
1.1 Linux服务器配置要求
- 硬件规格:建议使用4核CPU、8GB内存以上的物理机或云服务器(如AWS EC2 t3.medium、阿里云ECS c6)。
- 系统选择:Ubuntu 22.04 LTS(推荐)或CentOS 8,需确保为64位系统。
- 网络要求:开放80/443端口(Web服务)、22端口(SSH),建议配置防火墙规则限制来源IP。
1.2 Mac客户端环境
- 系统版本:macOS 12 Monterey及以上。
- 工具准备:安装Homebrew包管理器(
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"),用于后续依赖安装。
二、Linux服务器部署流程
2.1 安装基础依赖
# Ubuntu示例sudo apt update && sudo apt install -y \git wget curl python3-pip python3-venv \nginx certbot supervisor# CentOS示例sudo yum install -y epel-release && sudo yum install -y \git wget curl python3-pip python3-venv \nginx certbot supervisor
2.2 下载并配置Deepseek
# 克隆官方仓库(假设为示例地址)git clone https://github.com/deepseek-ai/deepseek-server.gitcd deepseek-server# 创建虚拟环境python3 -m venv venvsource venv/bin/activate# 安装Python依赖pip install -r requirements.txt
2.3 配置Web服务
- 修改配置文件:编辑
config/default.py,设置以下参数:HOST = '0.0.0.0' # 允许外部访问PORT = 8000 # 默认端口DEBUG = False # 生产环境关闭调试
- 启动Gunicorn(推荐生产环境使用):
或通过Supervisor托管:gunicorn -w 4 -b 0.0.0.0:8000 deepseek.app:app
# /etc/supervisor/conf.d/deepseek.conf[program:deepseek]command=/path/to/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 deepseek.app:appdirectory=/path/to/deepseek-serveruser=ubuntuautostart=trueautorestart=true
2.4 配置Nginx反向代理
# /etc/nginx/sites-available/deepseekserver {listen 80;server_name your-domain.com;location / {proxy_pass http://127.0.0.1:8000;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;}}
启用配置并重启Nginx:
sudo ln -s /etc/nginx/sites-available/deepseek /etc/nginx/sites-enabled/sudo nginx -t && sudo systemctl restart nginx
2.5 配置HTTPS(可选)
sudo certbot --nginx -d your-domain.comsudo certbot renew --dry-run # 测试续期
三、Mac远程Web-UI访问配置
3.1 网络连通性测试
在Mac终端执行:
curl -I http://your-server-ip:8000 # 直接测试APIcurl -I https://your-domain.com # 测试HTTPS
若返回200 OK则表示服务可达。
3.2 浏览器访问
- 打开Safari/Chrome,输入
https://your-domain.com。 - 若遇到证书错误,检查是否配置了有效SSL证书。
3.3 高级访问控制(可选)
- IP白名单:在Nginx中添加
allow/deny规则:location / {allow 192.168.1.0/24; # 允许内网deny all; # 拒绝其他proxy_pass http://127.0.0.1:8000;}
- Basic Auth:通过
htpasswd生成密码文件:
在Nginx配置中添加:sudo apt install apache2-utilshtpasswd -c /etc/nginx/.htpasswd admin
location / {auth_basic "Restricted";auth_basic_user_file /etc/nginx/.htpasswd;proxy_pass http://127.0.0.1:8000;}
四、常见问题与解决方案
4.1 端口冲突
- 现象:启动失败,日志显示
Address already in use。 - 解决:
或修改Deepseek的sudo lsof -i :8000 # 查找占用进程sudo kill -9 <PID> # 终止进程
PORT配置。
4.2 依赖冲突
- 现象:
pip install报错版本不兼容。 - 解决:
# 升级pip并重试pip install --upgrade pippip install -r requirements.txt --ignore-installed
4.3 跨域问题(前端开发时)
- 现象:浏览器控制台报
CORS policy错误。 - 解决:在Flask应用中添加CORS支持:
from flask_cors import CORSapp = Flask(__name__)CORS(app) # 允许所有跨域请求
五、性能优化建议
- Gunicorn参数调优:
- 工作进程数:
-w 2*CPU核心数+1(如8核CPU用17个进程)。 - 线程模式:
--threads 4(适合I/O密集型任务)。
- 工作进程数:
- Nginx缓存:
location /static/ {expires 30d;add_header Cache-Control "public";}
- 日志管理:
- 通过
logging模块配置分级日志。 - 使用
logrotate定期轮转日志文件。
- 通过
六、安全加固
- 防火墙规则:
sudo ufw allow 80/tcpsudo ufw allow 443/tcpsudo ufw allow 22/tcp # 仅限可信IPsudo ufw enable
- SSH密钥认证:
- 在Mac生成密钥对:
ssh-keygen -t ed25519。 - 上传公钥到服务器:
ssh-copy-id user@server-ip。
- 在Mac生成密钥对:
- 定期更新:
sudo apt update && sudo apt upgrade -ypip list --outdated | awk '{print $1}' | xargs -I {} pip install --upgrade {}
七、总结
通过本文的步骤,您已成功完成:
- 在Linux服务器部署Deepseek服务。
- 配置Nginx反向代理与HTTPS。
- 实现Mac通过域名安全访问Web-UI。
扩展建议:
- 结合Docker部署(参考
Dockerfile示例)。 - 使用Ansible自动化批量部署。
- 集成Prometheus+Grafana监控服务状态。
如遇具体问题,可查阅Deepseek官方文档或社区论坛获取最新支持。

发表评论
登录后可评论,请前往 登录 或 注册