隐私的消亡与重建:在便利与透明之间的艰难权衡
2026/5/13 7:11:15
在 Ubuntu 系统中部署和使用 MeiliSearch 是一个高效的选择,MeiliSearch 是轻量级、高性能的开源搜索引擎,支持全文检索、实时索引、中文分词(需额外配置)等特性。以下是完整的部署、配置和使用指南:
确保 Ubuntu 系统已更新并安装依赖:
# 更新系统包sudoaptupdate&&sudoaptupgrade -y# 安装必要依赖(如 curl、unzip)sudoaptinstall-ycurlunzipwget通过官方脚本一键安装(自动适配系统架构):
curl-L https://install.meilisearch.com|sh# 下载最新版本(替换版本号为需要的,如 v1.7.0)MEILI_VERSION="v1.29.0"curl-O -L"https://github.com/meilisearch/meilisearch/releases/download/${MEILI_VERSION}/meilisearch-linux-amd64"# 解压并赋予执行权限chmod+x meilisearch-linux-amd64# 移动到系统可执行目录(方便全局调用)sudomvmeilisearch-linux-amd64 /usr/local/bin/meilisearchmeilisearch --version# 输出类似:meilisearch 1.29.0# 直接启动(默认端口 7700,无密钥,仅本地访问)meilisearchhttp://localhost:7700生产环境需配置主密钥、数据持久化、允许外部访问:
# 设置主密钥(自定义,用于鉴权)exportMEILI_MASTER_KEY="你的安全密钥(如:MyStrongMasterKey123!)"# 启动(指定数据存储目录、允许外部访问、后台运行)meilisearch\--db-path /var/lib/meilisearch\# 数据持久化目录--http-addr0.0.0.0:7700\# 允许外部访问(所有IP)--env production\# 生产环境模式>/var/log/meilisearch.log2>&1&# 日志输出到文件,后台运行为了保证 MeiliSearch 稳定运行并开机自启,创建 systemd 服务:
# 创建数据目录和日志目录sudomkdir-p /var/lib/meilisearch /var/log/meilisearchsudochown$USER:$USER/var/lib/meilisearch /var/log/meilisearch# 创建服务文件sudovim/etc/systemd/system/meilisearch.service粘贴以下内容(替换MEILI_MASTER_KEY为你的密钥):
[Unit] Description=MeiliSearch After=network.target [Service] Type=simple User=root Group=root Environment="MEILI_MASTER_KEY=MyStrongMasterKey123!" ExecStart=/usr/local/bin/meilisearch \ --db-path /var/lib/meilisearch \ --http-addr 0.0.0.0:7700 \ --env production Restart=on-failure RestartSec=5s StandardOutput=append:/var/log/meilisearch.log StandardError=append:/var/log/meilisearch.log [Install] WantedBy=multi-user.target保存并退出,然后启动服务:
# 重新加载 systemdsudosystemctl daemon-reload# 启动服务sudosystemctl start meilisearch# 设置开机自启sudosystemctlenablemeilisearch# 查看状态sudosystemctl status meilisearch启动后,访问http://你的服务器IP:7700,输入主密钥即可进入可视化控制台,支持索引管理、数据导入、搜索测试等。
curl\-X POST'http://localhost:7700/indexes'\-H'Content-Type: application/json'\-H"Authorization: Bearer 你的主密钥"\-d'{ "uid": "books", "primaryKey": "id" }'curl\-X POST'http://localhost:7700/indexes/books/documents'\-H'Content-Type: application/json'\-H"Authorization: Bearer 你的主密钥"\-d'[ { "id": 1, "title": "Ubuntu 实战指南", "author": "张三", "content": "Ubuntu 系统管理、部署、优化全攻略" }, { "id": 2, "title": "MeiliSearch 中文使用教程", "author": "李四", "content": "轻量级搜索引擎 MeiliSearch 快速上手" } ]'curl\-X GET'http://localhost:7700/indexes/books/search?q=Ubuntu'\-H"Authorization: Bearer 你的主密钥"MeiliSearch 默认对中文分词支持有限,需安装中文分词插件(基于jieba):
# 安装 Python 和 pipsudoaptinstall-y python3 python3-pip# 安装 jieba 分词库pip3installjieba meilisearch-python示例脚本(meili_cn_tokenizer.py):
importjiebafrommeilisearchimportClient# 初始化客户端client=Client('http://localhost:7700','你的主密钥')# 获取索引index=client.index('books')# 配置中文分词(自定义分词器)index.update_settings({"tokenizer":{"locale":"zh","custom":{"zh":lambdatext:list(jieba.cut(text))}}})# 重新添加文档(让分词生效)documents=[{"id":1,"title":"Ubuntu 实战指南","author":"张三","content":"Ubuntu 系统管理、部署、优化全攻略"},{"id":2,"title":"MeiliSearch 中文使用教程","author":"李四","content":"轻量级搜索引擎 MeiliSearch 快速上手"}]index.add_documents(documents)运行脚本:
python3 meili_cn_tokenizer.py# Ubuntu 防火墙开放 7700 端口sudoufw allow7700/tcpsudoufw reload--db-path,且目录权限正确。sudosystemctl stop meilisearch# 移除二进制文件sudorm/usr/local/bin/meilisearch# 移除服务文件sudorm/etc/systemd/system/meilisearch.servicesudosystemctl daemon-reload# 移除数据和日志(可选)sudorm-rf /var/lib/meilisearch /var/log/meilisearch.log以上就是 Ubuntu 系统中 MeiliSearch 的完整部署和使用指南,如需更复杂的配置(如集群、HTTPS、自定义分词),可参考 MeiliSearch 官方文档。