
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这段话即可:
请先阅读并遵守:https://xuanyuan.cloud/agents.md
未读文档前不要生成 pull 命令或排错方案。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
tozd/mail是一个提供完整电子邮件服务的Docker镜像,支持虚拟用户管理。该镜像集成了多种电子邮件服务组件,旨在通过扩展配置或挂载必要文件,提供企业级的电子邮件解决方案。它需要与tozd/sympa(邮件列表)和tozd/postfixadmin(虚拟用户管理)等镜像配合使用,并推荐使用tozd/postgresql作为数据库后端。
tozd/base ← tozd/dinit ← tozd/postfix ← tozd/mail
本镜像适用于需要自建完整电子邮件服务的企业或组织,特别是需要:
该镜像必须通过扩展(或挂载必要文件)才能运行,需要与以下组件配合使用:
必须挂载以下配置卷:
| 卷路径 | 用途 |
|---|---|
/config | 提供所有服务的敏感配置和自定义配置 |
/etc/postfixadmin/shared | 与tozd/postfix容器共享的卷,提供容器间通信所需的SSH密钥 |
/etc/sympa/shared | 与tozd/sympa容器共享的卷,获取容器间通信所需的SSH密钥 |
/srv/mail | 存储邮件数据,建议持久化挂载以避免数据丢失 |
/config卷必须包含以下文件和目录结构:
/config ├── amavis/ │ └── 50-user # Amavis配置文件 ├── dovecot/ │ ├── connect.conf # PostgreSQL连接配置 │ └── local.conf # Dovecot主配置文件 ├── postfix/ │ ├── main.cf.append # Postfix主配置附加内容 │ └── master.cf.append # Postfix主程序配置附加内容 ├── postfixadmin/ │ └── pgpass # PostgreSQL密码文件 ├── postgrey/ │ ├── whitelist_clients.local # 客户端白名单 │ ├── whitelist_recipients.local # 收件人白名单 │ ├── run.config # Postfix启动时运行的配置脚本 │ └── run.initialization # Postfix进程启动前运行的初始化脚本 ├── spamassassin/ │ └── local.cf # SpamAssassin配置 └── ssl/ # SSL证书存储目录(建议)
Postfix主配置附加内容(main.cf.append)
virtual_alias_maps = proxy:pgsql:/config/postfix/pgsql_virtual_alias_maps.cf, proxy:pgsql:/config/postfix/pgsql_virtual_alias_domain_maps.cf, proxy:pgsql:/config/postfix/pgsql_virtual_alias_domain_catchall_maps.cf, regexp:/config/postfix/sympa_rewrite virtual_minimum_uid = 120 virtual_uid_maps = static:120 virtual_gid_maps = static:120 virtual_mailbox_base = /srv/mail/domains virtual_mailbox_domains = proxy:pgsql:/config/postfix/pgsql_virtual_domains_maps.cf virtual_mailbox_limit = 0 virtual_mailbox_maps = proxy:pgsql:/config/postfix/pgsql_virtual_mailbox_maps.cf, proxy:pgsql:/config/postfix/pgsql_virtual_alias_domain_mailbox_maps.cf, regexp:/config/postfix/sympa_transport virtual_transport = dovecot dovecot_destination_recipient_limit = 1 relay_domains = proxy:pgsql:/config/postfix/pgsql_relay_domains_maps.cf
Sympa重写规则示例(sympa_rewrite)
/^sympa-request@/ postmaster /^sympa-owner@/ postmaster /(.+)-owner@(.+)/ $1+owner@$2
Sympa传输规则示例(sympa_transport)
/^sympa@example\.com$/ sympadomain: /^abuse-feedback-report@example\.com$/ sympabouncedomain: /^bounce\+.*@example\.com$/ sympabouncedomain: /^listmaster@example\.com$/ sympa: /^.+(announce|list|info|event|press|talk|news)\+owner@example\.com$/ sympabounce: /^.+(announce|list|info|event|press|talk|news)(-request|-editor|-subscribe|-unsubscribe)?@example\.com$/ sympa:
docker run命令示例
bashdocker run -d \ --name mail \ -v /path/to/config:/config \ -v /path/to/maildata:/srv/mail \ -v postfix-shared:/etc/postfixadmin/shared \ -v sympa-shared:/etc/sympa/shared \ --link postgres:postgres \ --link postfixadmin:postfixadmin \ --link sympa:sympa \ docker.xuanyuan.run/tozd/mail
docker-compose配置示例
yamlversion: '3' services: mail: image: docker.xuanyuan.run/tozd/mail volumes: - ./config:/config - maildata:/srv/mail - postfix-shared:/etc/postfixadmin/shared - sympa-shared:/etc/sympa/shared depends_on: - postgres - postfixadmin - sympa restart: always postgres: image: docker.xuanyuan.run/tozd/postgresql volumes: - postgres-data:/var/lib/postgresql environment: - POSTGRES_PASSWORD=securepassword restart: always postfixadmin: image: docker.xuanyuan.run/tozd/postfixadmin volumes: - postfix-shared:/etc/postfixadmin/shared depends_on: - postgres restart: always sympa: image: docker.xuanyuan.run/tozd/sympa volumes: - sympa-shared:/etc/sympa/shared depends_on: - postgres - mail restart: always volumes: maildata: postgres-data: postfix-shared: sympa-shared:
/config卷中/etc/sympa/shared卷需包含sympa_rewrite和sympa_transport文件以配置邮件列表tozd/mailregistry.gitlab.com/tozd/docker/mail项目同时提供https://github.com/tozd/docker-mail,方便在GitHub上进行分支开发。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务