Mailu 邮件服务器部署

雷恩 阅读:942 2024-10-25 13:51:17 评论:0

下载新的docker-compose

如果用老的版本docker-compsoe ,可能会出现以下错误

ERROR: Invalid interpolation format for "front" option in service "services": "${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}nginx:${MAILU_VERSION:-2024.06}"

https://github.com/docker/compose/releases
我这里下载的是 Docker Compose version v2.29.7 版本,下载后的 docker-compose移动到 /usr/bin/

cd /usr/local/src/
wget https://github.com/docker/compose/releases/download/v2.29.7/docker-compose-linux-x86_64
chmod +x docker-compose-linux-x86_64
mv docker-compose-linux-x86_64 /usr/bin/docker-compose

docker使用国内源

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
    "registry-mirrors": [
        "https://docker.m.daocloud.io",
         "https://dockerproxy.com",
         "https://docker.mirrors.ustc.edu.cn",
         "https://docker.nju.edu.cn",
         "http://hammal.staronearth.win/",
         "http://hub.staronearth.win/"
     ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

生成配置文件

打开 https://setup.mailu.io/2024.06/ 来生成docker-compose.yml和mailu.env文件,
STEP 1 - Initial configuration

  • Mailu storage path:
    这里是宿主机映射到docker中的volume,默认是/mailu

  • Main mail domain and server display name.
    这下面输入自己的域名,我这边输入的是itxz.cc

  • Website name
    这里写mail.itxz.cc

  • Linked Website URL
    这里面输入自己的域名https://mail.itxz.cc

  • Enable the admin UI
    打开admin的UI 界面

  • Enable the API
    打开API,后期可以通过 https://server/api/v1或得各个接口的信息
    API
    STEP 2 - Pick some features

  • Enable Web email client
    下拉列表框里,我这里选择的是snappymailsnappymailroundcube风格不同,可以看下面的截图

  • Enable the antivirus service
    如果想开启反病毒,就打开此项,不过需要增加1G的内存消耗
    其他的就不在过多的关注了,可以自行了解。

STEP 3 - expose Mailu to the world

  • IPv4 listen address
    这里没有IPV6,就用默认的127.0.0.1就行了,不过这里有个坑,后面会说

  • Enable an internal DNS resolver (unbound)
    此项打开

  • Public hostnames
    这里输入mail.itxz.cc
    全部填写完毕后,点击Setup MailU进行提交。
    mail_configuration

下载配置文件

  • 下载配置文件和环境文件

    cd /mailu
    wget https://setup.mailu.io/2024.06/file/65898171-b14e-45d3-b43c-600be1b7135a/docker-compose.yml
    wget https://setup.mailu.io/2024.06/file/65898171-b14e-45d3-b43c-600be1b7135a/mailu.env
  • 修改docker-compose.yml文件
    你下载了docker-compose.yml文件,需要把front容器下的posts端口里面的127.0.0.1:全部删除掉,如下,不然会报错,这里就是上面说的坑

    front:
      image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}nginx:${MAILU_VERSION:-2024.06}
      restart: always
      env_file: mailu.env
      logging:
        driver: journald
        options:
          tag: mailu-front
      ports:
        - "80:80"
        - "443:443"
        - "25:25"
        - "465:465"
        - "587:587"
        - "110:110"
        - "995:995"
        - "143:143"
        - "993:993"
        - "4190:4190"

运行docker

docker-compose.yml统计目录下,执行docker-compose -p mailu up -d 执行启动,通过docker-compose logs -f 来查看日志

cd /mailu
docker-compose -p mailu up -d

创建管理员账户和密码

PASSWORD 换成自己的密码

docker compose -p mailu exec admin flask mailu admin admin itxz.cc PASSWORD

登录后台

上面2步骤都没问题后启动后,输入https://mail.itxz.cc就可以打开,用户admin@itxz.cc (注意这里要带上域名的后缀),密码用上一步创建的密码登录
login

  • 登录Webmail
    直接打开邮箱的UI,可以进行收发邮件操作

  • 登录Admin
    打开后台进行一些设置,下面是打开admin后的界面
    登录admin

生成密钥

在admin管理界面,点击左面的邮件域,进行生成密钥,生成密钥后,如下图
dns
把相关的条目,在记得DNS 设置中进行解析即可。下面是我自己的dns配置,只是在展示了部分,没有全部截图
mydns

检测

这里我们可以通过mail tester 测试邮局进行测试
URL:https://www.mail-tester.com/?lang=zh
mail_tester

DKIM 检测

这一步和此文档没有多大关系,可用到的就是DKIM检测。
https://powerdmarc.com/zh/dkim-record-lookup/
https://powerdmarc.com/zh/dkim-record-generator/

snappymailroundcube的风格

  • snappymail
    snappymail

  • roundcube
    roundcube

本文链接:https://www.itxz.cc/?id=4 转载需授权!

分享到:

本文 zblog模板 原创,转载保留链接!网址:https://www.itxz.cc/?id=4

标签:邮件mailu
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。