feat(email): 初始化自建邮箱 MVP

- 新增 Go + SQLite 后端,支持登录、域名、邮箱、别名、联系人、规则、统计与邮件收发。
- 新增 Webmail 前端,支持多邮箱切换、邮件列表/阅读/写信、附件、搜索、主题切换与个人中心。
- 新增 Docker Compose 部署骨架,补充 Postfix、Dovecot、OpenDKIM、Nginx 配置与部署说明。
This commit is contained in:
LanQin
2026-06-14 01:07:48 +08:00
commit 3ef8caa319
85 changed files with 13649 additions and 0 deletions
+73
View File
@@ -0,0 +1,73 @@
version: "3.9"
services:
api:
build:
context: ..
dockerfile: deploy/api.Dockerfile
env_file: .env
volumes:
- lanqin-data:/data
- maildata:/var/mail/vhosts:ro
depends_on:
- dovecot
- postfix
restart: unless-stopped
web:
build:
context: ..
dockerfile: deploy/web.Dockerfile
restart: unless-stopped
nginx:
image: nginx:1.27-alpine
volumes:
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
ports:
- "80:80"
- "443:443"
depends_on:
- api
- web
restart: unless-stopped
postfix:
build:
context: ./postfix
env_file: .env
volumes:
- lanqin-data:/data
- maildata:/var/mail/vhosts
ports:
- "25:25"
- "587:587"
depends_on:
- dovecot
- opendkim
restart: unless-stopped
dovecot:
build:
context: ./dovecot
env_file: .env
volumes:
- lanqin-data:/data
- maildata:/var/mail/vhosts
ports:
- "993:993"
restart: unless-stopped
opendkim:
build:
context: ./opendkim
env_file: .env
volumes:
- lanqin-data:/data:ro
- dkim-keys:/etc/opendkim/keys
restart: unless-stopped
volumes:
lanqin-data:
maildata:
dkim-keys: