You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.2 KiB
3.2 KiB
title | tags | categories | keywords | description | abbrlink | date |
---|---|---|---|---|---|---|
NAS使用SnappyMail搭建个人WebMail | [网络 NAS技术 自建服务] | NAS技术 | webmail,snappymail,docker,nas | 使用 docker-compose 搭建 SnappyMail 个人 WebMail 服务 | 1781251812 | 2025-02-22 11:02:22 |
在 NAS 上搭建个人的 WebMail 服务可以让我们通过浏览器随时随地管理邮件。本文将介绍如何使用 docker-compose 来搭建 SnappyMail 服务,SnappyMail相对于其他的 WebMail 客户端,对于多账号的支持更加友好。如图是配置好的snappymail截面。

什么是 SnappyMail
SnappyMail 是一个开源的 WebMail 客户端,它是 RainLoop 的一个分支。它提供了现代化的界面和丰富的功能,支持多种邮件协议(IMAP/SMTP),并且可以轻松地通过 Docker 部署。
部署 SnappyMail
准备工作
首先创建项目目录并进入:
mkdir -p ~/docker/snappymail/snappymail
cd ~/docker/snappymail
创建配置文件
创建 docker-compose.yml 文件:
---
version: "2.1"
services:
email:
image: djmaze/snappymail
container_name: email
environment:
- PUID=1000
- PGID=1000
- TZ=Asia/Shanghai
- DEBUG=true
volumes:
- ./snappymail:/var/lib/snappymail
ports:
- "8888:8888"
restart: unless-stopped
php-fpm-exporter:
image: hipages/php-fpm_exporter:2.2.0
ports:
- 9253:9253
environment:
- PHP_FPM_SCRAPE_URI=tcp://email:9000/status
networks:
default:
external:
name: docker_default
启动服务
执行以下命令启动服务:
# 创建docker网络,如果已经有docker_default网络,则不需要。
docker network create -d bridge --attachable=true docker_default
# 启动npm
docker-compose up -d
# 查看启动日志
docker-compose logs -f
配置 SnappyMail
- 在~/docker/snappymail/snappymail/data/admin_password.txt文件,文件中的内容就是默认的admin密码。
- 访问管理界面: http://你的IP:8888/?admin(注意后面有个?admin)
- 默认管理员账号密码:admin/(步骤1获取的密码)
- 首次登录后请修改管理员密码
添加邮件域名
- 在管理界面中,点击 "域名" 菜单
- 点击 "添加域名" 按钮
- 填写你的邮件服务器信息:
- IMAP 服务器地址和端口
- SMTP 服务器地址和端口
- 是否启用 SSL/TLS
如图是我的配置:
访问 WebMail
配置完成后,用户可以通过 http://你的IP:8888 访问 WebMail 界面,使用自己的邮箱账号和密码登录。
注意url后面不带?admin,登录时使用的是自己邮箱的账号密码,不是刚才admin的密码。
安全建议
- 建议使用反向代理(如 Traefik)并配置 SSL 证书
- 修改默认管理员密码
- 限制管理界面的访问IP
常见问题
无法连接邮件服务器
- 检查邮件服务器地址和端口是否正确
- 确认服务器是否支持 SSL/TLS
- 检查账号密码是否正确
- 某些邮件服务可能需要设置应用专用密码
- 配置过程中遇到问题的可以在评论区讨论