从零开始部署 MeiliSearch 搜索引擎详细教程
对于许多开发者和项目团队而言,快速实现高效搜索功能是一个常见需求。MeiliSearch 作为一款用 Rust 编写的开源搜索引擎,以其轻量级、易用性和出色的性能受到了广泛关注。与 Elasticsearch 等传统解决方案相比,MeiliSearch 更加轻量,学习曲线平缓,且开箱即支持中文分词,非常适合中小规模数据量的项目使用。本教程将手把手教你在 Linux 系统上从零开始部署 MeiliS
前言
对于许多开发者和项目团队而言,快速实现高效搜索功能是一个常见需求。MeiliSearch 作为一款用 Rust 编写的开源搜索引擎,以其轻量级、易用性和出色的性能受到了广泛关注。与 Elasticsearch 等传统解决方案相比,MeiliSearch 更加轻量,学习曲线平缓,且开箱即支持中文分词,非常适合中小规模数据量的项目使用。
本教程将手把手教你在 Linux 系统上从零开始部署 MeiliSearch,即使你是零基础的初学者,也能轻松跟随完成。我们将涵盖两种主流的安装方式,以及配置、验证和基本使用的完整流程。
1 准备工作:
准备一台具备公网IP的云服务器(推荐使用雨云)
优惠注册地址:https://www.rainyun.com/sn_
使用优惠码:sn
注: 使用优惠码注册后绑定微信可领取5折优惠券
服务器选购步骤:
- 注册后,在"总览"页面找到"云服务器"入口,进入后点击"购买云服务器"

2.根据需求选择合适的配置,建议选择国内的服务器,访问更快,选好后点击立即购买即可

![]()
3.选好后进入控制台,使用SSH客户端远程连接服务器即可,SSH客户端建议选择FinalShell
2 安装 MeiliSearch
在 Linux 系统上,我们主要有两种安装 MeiliSearch 的方式:直接二进制安装和使用 Docker 安装。你可以根据自身需求选择其中一种。
2.1 方法一:直接二进制安装
这是最快捷的安装方式,特别适合快速体验和测试环境。
-
打开终端,进入合适的安装目录,例如
/usr/local/bin:
bash
cd /usr/local/bin
执行一键安装脚本:
bash
curl -L https://install.meilisearch.com | sh
此命令会自动下载适用于你系统架构的最新版 MeiliSearch 二进制文件。
-
移动可执行文件(可选,但建议):
安装脚本完成后,会将可执行文件留在当前目录。为了系统管理方便,建议将其移动到系统命令目录:
bash
sudo mv ./meilisearch /usr/bin/
2.2 方法二:使用 Docker 安装
如果你的系统已经安装了 Docker,使用容器部署可以更好地实现环境隔离,便于后续管理。
-
拉取最新镜像:
bash
docker pull getmeili/meilisearch:latest
启动 MeiliSearch 容器:
bash
docker run -d --name meilisearch \
-p 7700:7700 \
-v /path/on/your/host:/meili_data \
getmeili/meilisearch:latest
参数说明:
-
-d:后台运行容器。 -
--name:为容器指定一个名称。 -
-p 7700:7700:将容器的 7700 端口映射到主机的 7700 端口。 -
-v:挂载数据卷,将容器内数据持久化到主机,防止容器删除后数据丢失。请将/path/on/your/host替换为你主机上的实际路径。
3 配置与运行
3.1 初始配置
首次启动时,尤其是在生产环境中,强烈建议设置主密钥(Master Key)来保护你的搜索服务。
-
创建配置文件:
在/etc/目录下下载并创建初始配置文件:
bash
cd /etc/
sudo curl https://raw.githubusercontent.com/meilisearch/meilisearch/latest/config.toml > meilisearch.toml
编辑配置文件:
使用文本编辑器(如 nano 或 vim)打开 meilisearch.toml,修改关键配置:
toml
env = "production" # 设置为生产环境
master_key = "your_master_key_here" # 设置一个至少16位的主密钥,请务必自定义
db_path = "/var/lib/meilisearch/data" # 数据库存放路径
dump_dir = "/var/lib/meilisearch/dumps" # 转储文件目录
snapshot_dir = "/var/lib/meilisearch/snapshots" # 快照目录
注意:master_key 是你访问 MeiliSearch API 的超级密钥,一旦丢失,将无法恢复,请妥善保管。
3.2 以服务方式运行
对于生产环境,将 MeiliSearch 配置为系统服务(systemd)可以确保它一直在后台稳定运行,并且开机自启。
-
创建服务文件:
创建文件/etc/systemd/system/meilisearch.service并输入以下内容:
ini
[Unit]
Description=Meilisearch
After=systemd-user-sessions.service
[Service]
Type=simple
WorkingDirectory=/var/lib/meilisearch
ExecStart=/usr/bin/meilisearch --config-file-path /etc/meilisearch.toml
[Install]
WantedBy=multi-user.target
-
如果使用自定义路径,请确保调整
WorkingDirectory和ExecStart中的路径。 -
创建数据目录并授权:
bash
sudo mkdir -p /var/lib/meilisearch
sudo chown -R $USER:$USER /var/lib/meilisearch # 将$USER替换为你的用户名,或者使用合适的系统用户
启用并启动服务:
bash
sudo systemctl daemon-reload # 重新加载服务配置
sudo systemctl enable meilisearch # 设置开机自启
sudo systemctl start meilisearch # 立即启动服务
4 验证安装
完成安装和启动后,需要确认 MeiliSearch 是否正常运行。
-
检查服务状态:
bash
sudo systemctl status meilisearch
-
如果看到
active (running)的提示,说明服务已成功启动。 -
使用 curl 测试:
在终端执行:
bash
curl http://localhost:7700
如果返回包含 "pagination": null 等信息的 JSON 数据,则说明服务运行正常。
-
访问 Web 界面:
打开浏览器,访问http://你的服务器IP:7700。如果能看到 MeiliSearch 的 Web 调试界面,则证明安装成功。
5 基本使用示例
下面我们通过一个简单的例子,演示如何使用 MeiliSearch 进行数据搜索。
-
使用 Python 添加文档:
MeiliSearch 提供了多语言 SDK,这里以 Python 为例。首先安装 Python SDK:
bash
pip install meilisearch
然后创建 Python 脚本 test_meilisearch.py:
python
# 执行搜索
search_results = index.search('三体')
print("搜索结果:", search_results)
搜索数据:
在上面的 Python 脚本中继续添加代码,或新建一个脚本:
python
# 执行搜索
search_results = index.search('三体')
print("搜索结果:", search_results)
运行脚本,你将看到包含关键词"三体"的搜索结果。
6 故障排查
如果在部署过程中遇到问题,可以尝试以下排查步骤:
-
检查端口占用:确保 7700 端口没有被其他程序占用。
bash
sudo netstat -tulnp | grep 7700
查看服务日志:
bash
sudo journalctl -u meilisearch -f
连接被拒绝问题:如果遇到 Failed to connect to localhost port 7700
-
通常是因为 MeiliSearch 服务没有成功启动。请确认:
-
配置文件路径正确。
-
数据目录有正确的读写权限。
-
主密钥配置正确(如果设置了的话)。
-
希望通过这篇教程,你已经成功在 Linux 系统上部署了 MeiliSearch,并完成了初步的配置和测试。MeiliSearch 的强大之处在于它的简洁与高效,让它成为中小型项目实现搜索功能的一个绝佳选择。
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)