接外包,有相关需求的可以联系我:Telegram | Email

Docker搭建Poste.io邮箱【保姆级教程】

该文章创建(更新)于02/23/2021,请注意文章的时效性!

最近去尝试把自己的服务器应用都部署到docker,就尝试把宝塔邮箱去掉改成Poste.io!感觉还挺不错的!基本能用到的功能都用到了!

视频教程

  • B站

  • Youtube

hostname设置

假设host_name为mx.emperinter.info

sudo hostnamectl set-hostname mx.emperinter.info
hostname # 查看是否设置成功

域名解析

255.255.255.255 为服务器IP

主机记录 记录类型 记录值
mx A 255.255.255.255
smtp CNAME mx.emperinter.info
pop CNAME mx.emperinter.info
imap CNAME mx.emperinter.info
@ MX mx.emperinter.info
@ TXT v=spf1 mx ~all
s20191223631._domainkey 【先不配置这个,后面生成再配置,记录也是生成的】 TXT 后面配置生成,到时候来解析配置!

开放端口

我用的是centos,我是被端口给绕晕了,自己配置按实际情况配置!这一步骤仅供参考!25端口在阿里云等等是被封禁的,可以尝试去申请试试,我之前尝试没开通!还有是否有安全组等等要打开!

# 安装
yum install firewalld
# 开机启动
systemctl enable firewalld
# 启动
systemctl start firewalld
# 添加端口
firewall-cmd --zone=public --add-port=25/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --zone=public --add-port=110/tcp --permanent
firewall-cmd --zone=public --add-port=143/tcp --permanent
firewall-cmd --zone=public --add-port=587/tcp --permanent
firewall-cmd --zone=public --add-port=993/tcp --permanent
firewall-cmd --zone=public --add-port=995/tcp --permanent
# 重启生效?
firewall-cmd --reload
# 查询是否开启端口
firewall-cmd --query-port=80/tcp

安装docker

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
sudo usermod -aG docker your-user #注意替换为你的配置
systemctl restart docker 

Poste.io 安装

  • 配置数据目录
mkdir /home/mail
  • 安装
docker run \
-p 25:25 \
-p 80:80 \
-p 110:110 \
-p 143:143 \
-p 443:443 \
-p 587:587 \
-p 993:993 \
-p 995:995 \
-v /etc/localtime:/etc/localtime:ro \
-v /home/mail:/data \
--name "PosteServer" \
-h "mx.emperinter.info" \
-t analogic/poste.io
  • 这两天(2021-05-11)总出问题就更新了一下,发现官方升级了,以往的启动不能后台运行【也有可能不是第一次安装,已经有数据文件导致的,看官网教教程https://poste.io/open差不多还是上面那个启动语句】。下面这个后台倒是运行但不能退出,一退出就只能重启了还好文件不会发生变化,都可以试试,有好的方法欢迎留言。
docker run -d \
--restart always \
-p 25:25 \
-p 80:80 \
-p 110:110 \
-p 143:143 \
-p 443:443 \
-p 587:587 \
-p 993:993 \
-p 995:995 \
-v /etc/localtime:/etc/localtime:ro \
-v /home/mail:/data \
--name "PosteServer" \
-h "mx.emperinter.info" \
-t analogic/poste.io

若遇到端口占用的情况,请注意查杀进程lsof -i:25 kill -15 process_id

  • 安装后启动
docker start PosteServ

配置

创建管理员账户

  • 登陆后台

输入你的域名地址https://mx.emperinter.info就行!

  • 设置管理员账号和密码

其他设置

地址 https://mx.emperinter.info/admin/login,用你创建的管理员账号和密码登陆!

创建dkim密钥

Virtual domains -> emperinter.info【你的一级域名】

  • 点击 create new key,生成key

  • 把得到的值放到我们之前说的解析那里【如下】

主机记录 记录类型 记录值
s20210221288._domainkey TXT k=rsa; p=MIIBIjANBgkqhk.........CuXNhz7TwI

开启SSL

  • 注意Common name替换成你的hostname【域名地址】,后面的imap等等填写自己上面配置的!

检测端口是否正常!

依次点击Server status -> Connections Diagnostics即可!


添加用户

邮件界面中文化

登陆普通域名地址https://mx.emperinter.info【非admin】配置即可,其他就自己去玩吧!

客户端使用

就说一个SMTP的端口填587,SSL配置

  • 收件服务器【IMAP】

    选项 填写
    EMAIL 你的邮箱
    密码 你的邮箱密码
    服务器【Host Name】 mx.emperinter.info
    端口【Port Number】 993
    Security SSL
  • 寄件服务器【IMAP】

    选项 填写
    EMAIL 你的邮箱
    密码 你的邮箱密码
    服务器【Host Name】 mx.emperinter.info
    端口【Port Number】 587
    Security SSL 【我手机开启连不上,Ipad可以,具体自己选择】

其它

参考


要不赞赏一下?

微信
支付宝
PayPal
Bitcoin

版权声明 | Copyright

除非特别说明,本博客所有作品均采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。转载请注明转自-
https://www.emperinter.info/2021/02/23/poste-io/


时光飞逝说道:

很好的教程,可以写一篇 dirtsimple/poste.io 的教程吗?

emperinter说道:

再试试吧!我这貌似发过去的邮件被QQ邮箱给拦截了,如果后续还会看这个教程希望换个邮件试试吧!

emperinter说道:

🤦‍♂️咋想到用这个东西的呢?https://github.com/dirtsimple/poste.io 这里看了一下就多了IP和插件的配置可选项,貌似要自己配置DockerFile文件,个人用户不建议使用,配置有点麻烦。

emperinter留言

我相信你准备留下的内容是经过思考的!【勾选防爬虫,未勾选无法留言】

*

*



YouTube | B站

微信公众号

优惠码

阿里云国际版20美元
Vultr10美元
搬瓦工 | Bandwagon应该有折扣吧?
Just My SocksJMS9272283 【注意手动复制去跳转】
域名 | namesiloemperinter(1美元)
币安 币安