前言
在现代工作环境中,大多数公司都使用第三方提供的企业邮箱服务,这些服务通常允许用户免费注册并填写企业相关信息即可使用。虽然这些服务满足了大部分公司的基本需求,但在容量方面通常存在一定限制,一旦超过限制就无法继续接收邮件,需要清理邮箱或者升级为付费VIP服务。然而,除了这些选择之外,还有另一种选择:自己搭建邮件服务器。在网络上有一些免费的邮件服务器,可以满足基本的邮件收发需求。接下来,我将介绍一款开箱即用的邮件服务器:poste。
技术要求
在开始操作之前,您需要对以下技术有一定了解:
- Docker:近年来流行的容器化技术。虽然人们通常会听到更多有关 Kubernetes 的内容,但我们只需要进行单机部署,因此 Docker 就足够了。
- Docker Compose:这是一个进阶的技术,可以用于以服务方式管理容器。
- 域名:邮件服务器需要域名进行指向。这是可选配置,通常在公网环境下需要设置。
- Linux 环境:需要对 Linux 的基本命令有一定了解。本次我们搭建的环境是在 Linux 下,因此需要了解一些基本的命令。
步骤
- 下载邮件服务器的镜像文件
首先,通过 SSH 连接到 Linux 服务器,并执行以下命令将镜像文件拉取到本地:
<code>docker pull analogic/poste.io:latest</code>
如果已经下载过镜像,系统会提示已经是最新版本了。
- 启动服务
由于容器中的数据默认是没有持久化的,删除容器后配置信息也会丢失,因此我们需要将 Linux 上的目录映射到容器中,以保留配置信息。
假设我们希望将配置保存在 /usr/data/poste/data
目录下,我们可以执行以下操作:
mkdir -p /usr/data/poste/data
cd /usr/data/poste
然后启动容器。以下命令中涉及到端口映射,请确保映射设置与容器内部的端口一致,以避免后续初始化中出现错误提示:
docker run -d \
-p 10080:80 -p 10443:443 -p 25:25 -p 110:110 -p 143:143 -p 465:465 -p 587:587 -p 993:993 -p 995:995 -p 4190:4190 \
-e TZ=Asia/Shanghai \
-v $PWD/data:/data \
--name "mymailserver" \
--restart=always \
-t analogic/poste.io
参数说明:
-d
表示容器在后台执行-p
将容器的端口映射到外部,使得外部可以直接访问服务端口。冒号前是外部访问的端口,冒号后是容器的内部端口-e
设置容器的时区,这里设置成上海-v
将当前目录下的 data 映射到容器的/data
目录--name
设置容器的名称,我们在对容器进行操作时可以指定这个名称进行--restart=always
容器出现问题或 Docker 服务停掉启动后,该容器会自动重启-t
要启动的 Docker 镜像名
容器启动后,可能需要一些时间,请使用以下命令查看容器的运行状态:
<code>docker ps -a</code>
当容器状态变成 healthy
时,我们就可以访问邮件服务器进行初始化操作了。
- 初始化邮件服务器
为了安全起见,我们通过 HTTPS 进行服务的初始化。通过浏览器访问服务:
<code>https://<Linux服务器IP>:20443/admin/install/server</code>
其中 <Linux服务器IP>
是容器部署所在的 Linux 服务器的 IP 地址。
在配置时可能会出现一些警告,由于我们映射的端口不是默认的,所以会提示探测不通,但这不会影响使用。初始化完成后,会自动进入配置页面。
此外,我们还可以访问邮箱页面:
<code>https://<Linux服务器IP>:20443/webmail/</code>
- 测试发送接收邮件
登录邮箱页面后,虽然功能有些简陋,但基本的收发和查看邮件功能还是可以正常使用的。
我们可以发送一封测试邮件:
发送邮件后,我们可以直接在当前页面收到发送过来的邮件。
写在末尾
这样,我们就完成了邮件服务器的搭建。是不是觉得很简单,轻轻松松就能搭建好一个简单易用的邮件服务器呢?后续我将继续介绍如何配置邮件服务器,并确保可以接收到其他邮箱发送过来的邮件。
暂无评论内容