Commit Graph

22 Commits

Author SHA1 Message Date
LanQin c872ed559d feat(admin): 增加关于页与发布版本信息
- 在系统设置中新增“关于”标签页,提供版本、仓库、Issues、文档和开源协议入口。
- 通过 Docker 构建参数注入版本号与发布链接,并在前端展示当前发布版本。
- 调整 GitHub Actions 与镜像构建流程,仅在 tag 发布时构建并发布带版本标识的镜像。
2026-06-21 02:23:40 +08:00
LanQin 9b70ba5927 build(api): 升级 Go 构建环境版本
- 将 `apps/api` 的 `go` 版本提升到 `1.25.0`,并同步更新依赖校验信息。
- 将 `deploy/all-in-one/Dockerfile` 和 `deploy/api.Dockerfile` 的构建镜像升级到 `golang:1.25-bookworm`。
2026-06-19 23:48:02 +08:00
LanQin_ bfc114bec3 feat(web): 升级前端依赖并重构邮件编辑器
- 将前端包管理切换为 `pnpm`,新增工作区与锁文件,并同步更新 CI 与 Docker 构建流程。
- 引入 `tiptap` 重构邮件正文编辑器,支持预览、富文本样式、链接/图片编辑与日程卡片插入。
- 发送与定时发送新增确认提示,补充空主题、空正文和附件提醒。
- 更新 `README.md` 与 `SHADCN_RULES.md` 中的安装与检查命令。
2026-06-17 14:58:56 +08:00
LanQin_ 6ebbb47012 fix(mail): 统一邮箱查询的大小写与别名匹配
- 将 Postfix/Dovecot 的 SQL 查询改为忽略大小写匹配,减少地址大小写导致的投递失败。
- 支持带 `+` 的详细地址解析,并基于域表关联定位邮箱目录。
- 启用 `lda_mailbox_autocreate`,确保投递到详细邮箱时可自动创建邮箱目录。
2026-06-17 14:15:03 +08:00
LanQin c21ebe43aa chore(deploy): 配置已发送邮件自动归档
- 为 `submission` 和 `smtps` 启用 `sender_bcc_maps`,将已认证发件人自动抄送到 `发件人+Sent@域名`。
- 补充 Postfix 与 Dovecot 的 `recipient_delimiter` 和 `lmtp_save_to_detail_mailbox` 配置,确保 `Sent` 文件夹可落盘保存。
- 更新部署文档,说明第三方客户端发信后的“已发送”同步流程。
2026-06-17 00:19:40 +08:00
LanQin 2029c8804a chore(deploy): 清理邮件服务 TLS 示例配置
- 移除 `docker-compose.yml` 中未启用的 TLS 证书环境变量示例,保持部署配置更简洁。
2026-06-17 00:08:36 +08:00
LanQin 811267e5b6 feat(deploy): 支持配置邮件客户端 TLS 证书
- 新增 `LANQIN_TLS_CERT_FILE` 和 `LANQIN_TLS_KEY_FILE`,让 Postfix 与 Dovecot 使用外部证书。
- 在单容器与分服务启动脚本中统一回退到 `localhost` 自签证书,并在证书不可读时给出告警。
- 补充部署文档与示例配置,说明第三方客户端校验证书的挂载方式。
2026-06-17 00:05:23 +08:00
LanQin 045132146b feat(mail): 增加签名管理与客户端配置
- 新增邮件签名的数据表、接口和前端管理页,支持全局/邮箱默认签名的创建、编辑、删除与查询。
- 写信时自动带入当前邮箱的默认签名,并优化手动输入内容时的覆盖行为。
- 补充第三方邮件客户端配置页,展示 IMAP/POP3/SMTP 连接信息及公共主机名。
- 扩展部署配置,开放 POP3S/SMTPS 端口并启用 Dovecot POP3 服务。
2026-06-16 23:15:35 +08:00
LanQin b0cc425f61 chore(mail): 优化邮件投递超时与服务配置
- 为 SMTP 连接与前端发信请求增加更明确的超时控制。
- 调整 Postfix 与 Rspamd 代理配置,缩短相关处理超时并统一运行参数。
2026-06-16 22:28:04 +08:00
LanQin 78e588264d chore(postfix): 配置 Postfix 的默认 TLS 证书
- 在 `postfix` 容器镜像中安装 `ssl-cert`。
- 为 `smtpd` 指定 snakeoil 证书和私钥路径,启用默认 TLS 配置。
2026-06-16 22:10:29 +08:00
LanQin 57fa0d0b57 chore(deploy): 兼容不同环境下的 rspamd 启动用户
- 在 `supervisord.conf` 中改为按用户存在情况动态选择 `rspamd` 启动参数。
- 当 `_rspamd` 和 `rspamd` 用户都不存在时,回退为 `--insecure` 启动。
2026-06-16 21:53:02 +08:00
LanQin 7788e93f0e chore(deploy): 调整 rspamd 与 dovecot 启动配置
- 为 `rspamd` 指定运行用户/组,提升容器内启动一致性。
- 将 `dovecot` 配置格式整理为多行块,保持配置可读性。
- 在 `rspamd` 入口脚本中按可用账号选择启动参数,并保留兜底启动方式。
2026-06-16 21:48:42 +08:00
LanQin_ 4fc933bc89 docs(deploy): 补充 SMTP 发信排查说明
- 说明单容器部署下 Webmail 发信的默认 Postfix 配置。
- 补充 `smtp delivery failed: EOF` 的排查命令与 `SMTP Require TLS` 注意事项。
- 调整 `deploy/postfix/master.cf` 中 `smtp/submission` 的监听标志,避免本机提交会话异常。
2026-06-16 21:21:56 +08:00
LanQin_ 5a1cc158a1 chore(deploy): 切换为本地目录挂载部署
- 将 `docker-compose` 中的数据、邮箱和 DKIM 存储从命名卷改为本地目录挂载。
- 删除不再需要的 `volumes` 声明,简化部署配置。
2026-06-16 10:52:04 +08:00
LanQin be8cd4be31 feat(mailbox): 支持用户自助申请邮箱
- 后端新增邮箱申请配置与接口,限制可申请域名并校验保留前缀。
- 管理后台系统设置增加自助申请邮箱开关、开放域名和禁止前缀配置。
- 个人中心新增申请邮箱入口,并在邮箱页优化当前邮箱切换与空列表处理。
- 补充相关测试与环境变量示例配置。
2026-06-16 00:51:41 +08:00
LanQin f8ff2a814b chore(deploy): 将 DKIM 组件切换为 Rspamd
- 用 Rspamd 替换 OpenDKIM 及其相关镜像、编排和启动脚本。
- 调整 Postfix、单容器镜像与 Docker 配置,改为对接 Rspamd milter。
- 增加 DKIM 私钥同步脚本与 Rspamd 本地配置,支持从 SQLite 周期导出签名密钥。
- 更新 API 启动与测试逻辑,兼容新的默认管理员邮箱与邮箱加载方式。
2026-06-15 23:41:21 +08:00
LanQin 2a5c4fcc0c chore(deploy): 优化 Docker 部署说明与安装脚本
- 将默认部署切换为拉取 GHCR 镜像,并补充本地源码构建的 override 用法。
- 新增单容器与多容器的构建编排文件,支持镜像版和源码构建版部署。
- 新增 `install.sh`,用于自动生成 `.env`、拉取镜像并启动服务。
2026-06-15 22:38:40 +08:00
LanQin f91b3143da chore(deploy): 更新 GHCR 默认镜像与部署说明
- 将部署示例中的默认镜像改为仓库对应的 GHCR 地址。
- 补充单容器部署时的镜像确认说明。
- 更新 GitHub Actions 的路径忽略规则,避免文档和示例配置变更触发发布流程。
2026-06-15 22:19:24 +08:00
LanQin 913a0ef420 chore(deploy): 增强 Docker 构建与发布流程
- 新增 GitHub Actions Docker 工作流,自动执行前端检查、后端测试并发布 GHCR 镜像。
- 为单容器与多容器部署补充镜像配置、使用说明和环境变量示例。
- 优化各 Dockerfile 的构建缓存与镜像体积,提升构建速度并减少无关文件进入镜像。
2026-06-15 22:05:41 +08:00
LanQin 1f964eefe2 feat(deploy): 增加单容器部署方案
- 新增 `deploy/all-in-one` 构建与启动配置,将 API、Web、Nginx、Postfix、Dovecot、OpenDKIM 集成到一个容器中。
- 调整 `deploy/docker-compose.yml` 默认指向单容器部署,并补充分体调试编排 `deploy/docker-compose.stack.yml`。
- 更新 `README.md`、`deploy/README.md` 和 `.env.example`,同步说明新的部署方式与本地投递配置。
2026-06-15 00:57:34 +08:00
LanQin 8a042ae3dc feat(admin): 扩展后台管理与登录安全能力。
- 新增用户、域名、邮箱、别名、邮件、系统设置与模板的管理接口和页面。
- 支持双因素认证、Turnstile、人机验证与管理员 SMTP 测试。
- 增加无人收件/未注册邮件归档、Maildir 同步和数据库迁移支持。
- 更新前端导航、个人中心 2FA 配置以及相关部署示例。
2026-06-15 00:38:51 +08:00
LanQin 3ef8caa319 feat(email): 初始化自建邮箱 MVP
- 新增 Go + SQLite 后端,支持登录、域名、邮箱、别名、联系人、规则、统计与邮件收发。
- 新增 Webmail 前端,支持多邮箱切换、邮件列表/阅读/写信、附件、搜索、主题切换与个人中心。
- 新增 Docker Compose 部署骨架,补充 Postfix、Dovecot、OpenDKIM、Nginx 配置与部署说明。
2026-06-15 00:38:50 +08:00