添加文章

master
李亚楠 2 weeks ago
parent 58e53817d3
commit b1bf1732c6
  1. 105
      source/_posts/nas/NAS使用SnappyMail搭建个人WebMailmd

@ -0,0 +1,105 @@
---
title: NAS使用SnappyMail搭建个人WebMail
tags:
- 网络
- NAS技术
- 自建服务
categories: NAS技术
date: 2025-02-22 11:02:22
keywords: webmail,snappymail,docker,nas
description: 使用 docker-compose 搭建 SnappyMail 个人 WebMail 服务
---
>在 NAS 上搭建个人的 WebMail 服务可以让我们通过浏览器随时随地管理邮件。本文将介绍如何使用 docker-compose 来搭建 SnappyMail 服务,SnappyMail相对于其他的 WebMail 客户端,对于多账号的支持更加友好。如图是配置好的snappymail截面。
<img src="https://img.dreamlyn.cn:8443/i/2025/03/06/144213.webp">
# 什么是 SnappyMail
SnappyMail 是一个开源的 WebMail 客户端,它是 RainLoop 的一个分支。它提供了现代化的界面和丰富的功能,支持多种邮件协议(IMAP/SMTP),并且可以轻松地通过 Docker 部署。
# 部署 SnappyMail
## 准备工作
首先创建项目目录并进入:
```bash
mkdir -p ~/docker/snappymail/snappymail
cd ~/docker/snappymail
```
## 创建配置文件
创建 docker-compose.yml 文件:
```yaml
---
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
1. 在~/docker/snappymail/snappymail/_data_/admin_password.txt文件,文件中的内容就是默认的admin密码。
2. 访问管理界面: http://你的IP:8888/?admin(注意后面有个?admin)
3. 默认管理员账号密码:admin/(步骤1获取的密码)
4. 首次登录后请修改管理员密码
## 添加邮件域名
1. 在管理界面中,点击 "域名" 菜单
2. 点击 "添加域名" 按钮
3. 填写你的邮件服务器信息:
- IMAP 服务器地址和端口
- SMTP 服务器地址和端口
- 是否启用 SSL/TLS
如图是我的配置:
<img src="https://img.dreamlyn.cn:8443/i/2025/03/06/144448.webp">
## 访问 WebMail
配置完成后,用户可以通过 http://你的IP:8888 访问 WebMail 界面,使用自己的邮箱账号和密码登录。
> 注意url后面不带?admin,登录时使用的是自己邮箱的账号密码,不是刚才admin的密码。
# 安全建议
1. 建议使用反向代理(如 Traefik)并配置 SSL 证书
2. 修改默认管理员密码
3. 限制管理界面的访问IP
# 常见问题
## 无法连接邮件服务器
- 检查邮件服务器地址和端口是否正确
- 确认服务器是否支持 SSL/TLS
- 检查账号密码是否正确
- 某些邮件服务可能需要设置应用专用密码
- 配置过程中遇到问题的可以在评论区讨论
Loading…
Cancel
Save