
本文软件由网友 P家单推人 推荐;
简介
什么是 Bichon ?
Bichon 是一个用 Rust 编写的轻量级、高性能的电子邮件归档系统,并提供了一个现代化的 WebUI。它的主要功能是从 IMAP 服务器同步您的电子邮件,为它们建立索引以实现快速的全文搜索,并提供一个 REST API 以便进行编程访问。不同于常规的邮件客户端,Bichon 专注于邮件的历史归档和搜索,而不是实时收发。它作为一个独立的服务器应用,可以持续同步您配置的邮件账户,并维护一个可搜索的本地副本。
主要特点
- 轻量与独立:使用 Rust 构建,零外部依赖,单个可执行文件包含了后端和 WebUI。
- 多账户支持:能够从多个邮件账户同步和下载邮件。
- 强大认证:支持 IMAP 密码或 OAuth2 登录,并为 OAuth2 提供了内置的 WebUI 授权流程。
- OpenAPI 支持:提供可编程访问的 OpenAPI,方便与其他系统集成。
- 统一搜索: 强大的多账户搜索功能,可以按发件人、附件、大小、日期、主题和正文等多种条件进行搜索。
- 标签与层次化管理:利用标签来组织邮件,高效过滤和定位。
- 高效存储:对邮件内容进行透明的压缩和去重,节省存储空间。
- 邮件管理:支持批量清理本地归档,下载 .eml 格式的原始邮件或单个附件。
- 数据洞察:提供仪表盘,可视化邮件统计数据,如数量、时间分布、热门发件人等。
- 国际化:WebUI 已被翻译成 17 种语言。
应用场景
- 个人邮件备份: 长期、可靠地备份来自多个邮箱(如 Gmail, Outlook, QQ邮箱)的所有邮件。
- 知识管理: 将邮件作为个人知识库的一部分,随时进行全文检索,快速找到所需信息。
- 隐私保护: 在本地保留邮件副本,即使云端邮件被删除或服务不可用,也能保证数据安全。
- 开发者集成: 通过其 OpenAPI 与其他应用或工作流集成。

Bichon 是一个功能强大且灵活的解决方案,适合需要长期存储及管理电子邮件的用户和组织。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 rustmailer ,选择第二个 rustmailer/bichon,版本选择 latest。
本文写作时, latest 版本对应为 0.1.1;

卷
在 docker 文件夹中,创建一个新文件夹 bichon,并在其中建一个子文件夹 data
| docker/bichon/data | /data | 存放应用数据、配置和索引文件等 |

端口
本地端口不冲突就行。
| 15630 | 15630 |

环境
| BICHON_LOG_LEVEL | info | 日志级别 |
| BICHON_ROOT_DIR | /data | 数据存储目录 |
| BICHON_CORS_ORIGINS | http://群晖IP:15630 | 重要: 设置为你的访问地址 |

如果不设置 BICHON_CORS_ORIGINS 或者设置错误,会导致页面上进入二级菜单会显示错误

更多的环境变量,请参考官方文档:https://github.com/rustmailer/bichon/wiki/Configuration-Reference#bichon-configuration-reference
命令行安装
如果你熟悉命令行,可能用 docker cli 更快捷
# 新建文件夹 bichon 和 子目录
mkdir -p /volume1/docker/bichon/data
# 进入 bichon 目录
cd /volume1/docker/bichon
# 运行容器
docker run -d \\
–name bichon \\
-p 15630:15630 \\
-v $(pwd)/data:/data \\
-e BICHON_LOG_LEVEL=info \\
-e BICHON_ROOT_DIR=/data \\
-e BICHON_CORS_ORIGINS=http://your_nas_ip:15630 \\
rustmailer/bichon:latest
也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件
version: '3'
services:
bichon:
image: rustmailer/bichon:latest
container_name: bichon
restart: unless–stopped
ports:
– 15630:15630
volumes:
– ./data:/data
environment:
– BICHON_LOG_LEVEL=info
– BICHON_ROOT_DIR=/data
# 重要:取消下面的注释并替换为你的访问地址,例如 http://192.168.0.197:15630
# – BICHON_CORS_ORIGINS=http://your_nas_ip:15630
然后通过 SSH 登录到您的群晖,执行下面的命令:
# 新建文件夹 bichon 和 子目录
mkdir -p /volume1/docker/bichon/data
# 进入 bichon 目录
cd /volume1/docker/bichon
# 将 docker-compose.yml 放入当前目录
# 一键启动
docker-compose up -d

运行
在浏览器中输入 http://群晖IP:15630 就能看到主界面。

如果不能自动识别为中文,可以手动切换

现在看起来是不是顺眼多了

接下来需要添加你的 IMAP 邮箱账户

还是以 88 邮箱为例

使用了 SSL 协议和端口号

认证方式选择了 Password
Gmail 和 Outlook 支持 OAuth2 认证方式。需要先在 Google Cloud Console(针对 Gmail)和 Microsoft Azure Portal(针对 Outlook)分别创建 OAuth 2.0 应用凭证,包括客户端 ID和客户端密钥,再配置相应的回调地址和权限范围

同步偏好默认就行

账号创建成功后

就可以同步邮件了

可以选择需要同步的文件夹

如果设置没问题,可以在 邮件 中看到对应文件夹中的邮件

尝试搜索包含 mariadb 的邮件

速度很快,需要关闭搜索界面才能看到邮件

回到仪表板

参考文档
rustmailer/bichon: Bichon – A lightweight, high-performance Rust email archiver with WebUI 地址:https://github.com/rustmailer/bichon
Home · rustmailer/bichon Wiki 地址:https://github.com/rustmailer/bichon/wiki





