立知-lychee-rerank-mm部署教程:Nginx反向代理+SSL证书配置指南
你是不是已经成功在本地启动了立知多模态重排序模型(lychee-rerank-mm),体验到了它给图文内容“打分排序”的便捷?但本地访问http://localhost:7860总觉得差点意思——只能在本地电脑用,没法分享给同事,更别提集成到其他系统里了。
别急,这篇文章就是来解决这个问题的。我们将手把手教你,如何把这个强大的“排序小助手”从本地搬到服务器上,并通过 Nginx 配置反向代理和 SSL 证书,让它拥有一个安全、稳定、可以通过互联网访问的专属地址。整个过程就像给你的本地服务“安家落户”并“办理身份证”,让它从“内部工具”升级为“公共服务”。
1. 为什么需要反向代理和HTTPS?
在开始动手之前,我们先花一分钟搞懂为什么要做这些配置。这能帮你更好地理解每一步操作的意义。
1.1 从“本地玩具”到“生产工具”
默认的lychee load命令启动的服务,绑定在127.0.0.1(即 localhost)的 7860 端口。这意味着:
- 只能本机访问:其他电脑、手机都无法连接。
- 没有域名:只能记IP和端口,不专业也不方便。
- 不安全:数据以明文(HTTP)传输,容易被窃听。
我们的目标是通过配置,实现:
- 反向代理:让用户通过一个友好的域名(如
rerank.yourdomain.com)访问服务,Nginx 在背后将请求转发给本地的 7860 端口。 - HTTPS:为域名配置 SSL 证书,让所有通信加密,变成安全的
https://开头。
1.2 核心组件与流程
整个部署的架构非常简单,你可以把它想象成一个接待处和后台办公室的关系:
用户浏览器 ↓ (访问 https://rerank.yourdomain.com) Nginx(运行在服务器的80/443端口,像前台) ↓ (将请求转发到内部地址) lychee-rerank-mm服务(运行在127.0.0.1:7860,像后台办公室) ↓ (处理请求并返回结果) Nginx ↓ 用户浏览器Nginx 在这里扮演了“智能前台”的角色,它负责接收外部的访问请求,安全地转发给内部服务,再把结果返回给用户。同时,它还负责管理 SSL 证书,提供 HTTPS 加密。
2. 部署前准备
工欲善其事,必先利其器。开始配置前,请确保你的环境已经就绪。
2.1 环境检查清单
请在你的服务器上逐一确认以下项目:
lychee-rerank-mm 已安装并可以本地运行在终端执行
lychee load,确保能在本机通过http://localhost:7860正常访问 Web 界面。这是后续所有步骤的基础。拥有一个域名你需要一个已经注册的域名(例如
yourdomain.com)。我们将为它配置一个子域名来访问服务,比如rerank.yourdomain.com。服务器权限确保你拥有服务器的 root 或 sudo 权限,因为安装 Nginx 和修改系统配置需要较高权限。
网络与防火墙
- 服务器的 80 端口(HTTP)和 443 端口(HTTPS)需要在防火墙中开放,以便外部访问。
- 如果你使用了云服务商(如阿里云、腾讯云)的安全组,也需要在其中放行这两个端口。
2.2 安装 Nginx
如果你的服务器上还没有 Nginx,可以通过包管理器快速安装。这里以 Ubuntu/Debian 系统为例:
# 更新软件包列表 sudo apt update # 安装 Nginx sudo apt install nginx -y # 启动 Nginx 服务并设置开机自启 sudo systemctl start nginx sudo systemctl enable nginx # 检查 Nginx 是否运行正常 sudo systemctl status nginx如果看到active (running)的状态,说明 Nginx 已经安装并成功启动。此时,你可以在浏览器中访问服务器的公网 IP 地址,应该能看到 Nginx 的默认欢迎页面。
3. 配置 Nginx 反向代理
这是核心步骤,我们将创建一个 Nginx 配置文件,告诉它如何将外部请求转发给 lychee-rerank-mm 服务。
3.1 创建专属配置文件
Nginx 的站点配置文件通常存放在/etc/nginx/sites-available/目录下。我们为 lychee-rerank-mm 创建一个:
sudo nano /etc/nginx/sites-available/lychee-rerank-mm将以下配置内容粘贴到编辑器中。请务必将rerank.yourdomain.com替换为你实际要使用的域名。
server { # 监听 80 端口(HTTP),并指定服务器名(你的域名) listen 80; server_name rerank.yourdomain.com; # 重要:改成你的域名 # 访问日志和错误日志的路径,方便后续排查问题 access_log /var/log/nginx/lychee_access.log; error_log /var/log/nginx/lychee_error.log; # 核心配置:将所有请求转发给本地运行的 lychee-rerank-mm 服务 location / { # 代理的目标地址,即 lychee 服务监听的地址和端口 proxy_pass http://127.0.0.1:7860; # 以下是一系列重要的代理头设置,确保 lychee 服务能正确接收原始请求信息 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; # 支持 WebSocket 连接(如果未来服务升级需要) proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; # 超时设置,避免长时间请求被断开 proxy_connect_timeout 60s; proxy_send_timeout 60s; proxy_read_timeout 60s; } }配置要点解释:
server_name: 这是“门牌号”,告诉 Nginx 当用户访问这个域名时,才使用本配置。proxy_pass http://127.0.0.1:7860: 这是“后台办公室地址”,所有请求都会被转发到这里。proxy_set_header ...: 这些行确保将用户的真实 IP、协议等信息传递给 lychee 服务,否则 lychee 看到的访问者都是127.0.0.1。- 超时设置得较长,是因为 AI 模型推理可能需要一些时间。
编辑完成后,按Ctrl+X,然后按Y,再按Enter保存并退出。
3.2 启用配置并测试
创建好配置文件后,需要创建一个符号链接到sites-enabled目录,Nginx 才会加载它。
# 创建符号链接,启用站点配置 sudo ln -s /etc/nginx/sites-available/lychee-rerank-mm /etc/nginx/sites-enabled/ # 测试 Nginx 配置语法是否正确 sudo nginx -t如果看到nginx: configuration file /etc/nginx/nginx.conf test is successful的提示,说明语法无误。
# 重新加载 Nginx 配置,使新配置生效 sudo systemctl reload nginx3.3 配置域名解析(DNS)
现在,你需要去你的域名注册商或 DNS 服务商那里,为子域名rerank.yourdomain.com添加一条 A 记录,指向你服务器的公网 IP 地址。
DNS 记录生效需要一些时间(通常几分钟到几小时,全球生效可能最多48小时)。你可以使用ping或nslookup命令来检查解析是否生效:
ping rerank.yourdomain.com当解析生效后,你应该就能在浏览器中通过http://rerank.yourdomain.com访问到 lychee-rerank-mm 的界面了(目前还是 HTTP)。
4. 配置 SSL 证书实现 HTTPS
HTTP 不安全,我们需要为网站配置 SSL 证书,升级到 HTTPS。这里我们使用 Let‘s Encrypt 提供的免费、自动化的证书服务,通过 Certbot 工具来完成。
4.1 安装 Certbot
Certbot 是获取和管理 Let‘s Encrypt 证书的官方推荐工具。
# 安装 Certbot 及其 Nginx 插件 sudo apt install certbot python3-certbot-nginx -y4.2 获取并安装 SSL 证书
运行以下命令,Certbot 会自动读取你的 Nginx 配置(找到server_name),并与 Let‘s Encrypt 通信,获取证书并自动修改 Nginx 配置。
sudo certbot --nginx -d rerank.yourdomain.com执行命令后,你会看到一个交互式提示:
- 输入邮箱:用于接收证书到期提醒和紧急通知。
- 同意服务条款:输入
A表示同意。 - 是否共享邮箱:可以选择
N(不共享)。 - 是否将 HTTP 重定向到 HTTPS:强烈建议选择
2(重定向)。这样即使用户输入http://也会自动跳转到安全的https://。
如果一切顺利,你会看到 “Congratulations!” 的成功消息。Certbot 已经自动完成了以下工作:
- 从 Let‘s Encrypt 获取了 SSL 证书。
- 修改了
/etc/nginx/sites-available/lychee-rerank-mm文件,添加了 443 端口(HTTPS)的监听配置。 - 配置了证书路径和加密协议。
4.3 验证 HTTPS 访问
现在,再次访问你的域名,这次使用https://rerank.yourdomain.com。浏览器地址栏应该会显示一个锁形图标,表示连接是安全的。即使你输入http://,也会自动跳转到https://。
你可以使用在线工具(如 SSL Labs Server Test)测试你的 SSL 配置,通常会得到一个 A 或 A+ 的评分。
4.4 设置证书自动续期
Let‘s Encrypt 证书有效期为 90 天,但 Certbot 安装时已经自动配置了定时任务(cron job)来自动续期。你可以手动测试续期功能是否正常:
sudo certbot renew --dry-run如果测试成功,就无需担心证书过期问题,系统会自动处理。
5. 优化与进阶配置
基础功能已经实现,下面是一些优化建议,让你的服务更稳定、更好用。
5.1 配置系统服务(开机自启)
目前 lychee-rerank-mm 是通过命令行lychee load启动的,如果服务器重启,服务就会停止。我们可以将其配置为系统服务,实现开机自启。
创建一个系统服务文件:
sudo nano /etc/systemd/system/lychee-rerank-mm.service添加以下内容(假设你的 lychee 命令在默认路径下):
[Unit] Description=Lychee Rerank MM Service After=network.target [Service] Type=simple User=root WorkingDirectory=/root ExecStart=/usr/local/bin/lychee load Restart=on-failure RestartSec=10 StandardOutput=journal StandardError=journal [Install] WantedBy=multi-user.target保存后,启用并启动服务:
# 重新加载 systemd 配置 sudo systemctl daemon-reload # 启用开机自启 sudo systemctl enable lychee-rerank-mm.service # 启动服务 sudo systemctl start lychee-rerank-mm.service # 检查服务状态 sudo systemctl status lychee-rerank-mm.service现在,lychee 服务会随着系统启动而自动运行。
5.2 安全加固建议
限制访问IP(可选):如果你的服务只允许特定IP(如公司网络)访问,可以在 Nginx 配置的
location /块中添加:allow 192.168.1.0/24; # 允许一个网段 allow 203.0.113.5; # 允许单个IP deny all; # 拒绝其他所有使用强密码或基础认证:如果服务非常敏感,可以考虑在 Nginx 层添加 HTTP 基础认证。
5.3 性能与日志
- 查看访问日志:
sudo tail -f /var/log/nginx/lychee_access.log - 查看错误日志:
sudo tail -f /var/log/nginx/lychee_error.log - 查看应用日志:
sudo tail -f /root/lychee-rerank-mm/logs/webui.log
如果发现访问量较大,可以考虑调整 Nginx 的worker_processes(工作进程数)等参数,但这通常需要更高的服务器配置。
6. 总结
恭喜你!至此,你已经成功完成了立知-lychee-rerank-mm 从本地服务到线上安全部署的完整过程。让我们回顾一下关键步骤和达成的成果:
6.1 部署成果
通过本教程,你将一个原本只能在本地访问的 AI 工具,升级成了一个:
- 拥有专属域名的专业服务(
https://rerank.yourdomain.com)。 - 通过 HTTPS 加密通信的安全服务,保护数据传输。
- 通过 Nginx 反向代理的稳定服务,具备了负载均衡和缓冲的潜力。
- 配置为系统服务的可靠服务,支持开机自启,无需手动维护。
6.2 核心价值
这次部署不仅仅是技术操作,它带来了实实在在的价值提升:
- 可访问性:团队成员、合作伙伴或客户现在可以通过互联网安全地使用这个工具。
- 可集成性:其他系统(如你的搜索平台、推荐引擎、客服系统)现在可以通过 API 方式(如果 lychee 提供)或模拟访问的方式,调用这个重排序能力。
- 专业性:一个带有正式域名和 HTTPS 的服务,显得更加可信和可靠。
- 可维护性:通过 Nginx 和 systemd 管理,服务的监控、日志查看和故障恢复都变得更加规范。
6.3 后续建议
部署完成只是开始,你可以进一步探索:
- 结合具体业务:将
https://rerank.yourdomain.com这个地址,集成到你公司的搜索、推荐或内容审核流程中。 - 监控告警:配置对服务端口(7860)和 HTTP 状态码的监控,确保服务持续可用。
- 探索 lychee 更多功能:回顾文章开头提到的批量重排序、多模态评分等功能,思考如何在你的业务场景中深度应用。
现在,你的“智能排序小助手”已经整装待发,随时准备为你的业务提升效率和精度了。快去试试通过新域名访问它吧!
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。