邮件系统是网络常用的通信渠道,本文记录使用 ExtMail 搭建属于自己的邮件服务器的方法。
概述ExtMail 简介 ExtMail开源版最早发布于2005年,定位于中小企业,满足稳定邮件收发,0成本拥有自己的中文邮件系统,
采用开放源代码的授权方式,为客户免费提供使用。后于2012年初推出专业版产品。目前ExtMail已经为众多知名央企、教育、制造业等在内的大量客户提供商业化的产品解决方案,并拥有海量的免费企业用户群,是同时拥有开源和收费两个产品线的邮件产品。目前互联网上运行超过一万台ExtMail服务器,承载十数万企业域名、数千万企业邮箱。
ExtMail的优势与特点开源、免费,符合中国人习惯,使用不受限制拥有自主著作权、产权,用户不必担心版权问题安装简便,友善的全Web方式后台管理丰富的增值模块,应对不同客户的需求与LisPush手机电邮无缝对接,满足移动办公要求提供VPS模板,利用LisVP云主机系统实现1分钟安装建立邮件服务器 这里使用 docker 安装的方式配置服务器
拉取镜像网址: https://hub.docker.com/r/palidin/extmail代码语言:javascript代码运行次数:0运行复制docker pull palidin/extmail配置好数据库运行容器代码语言:javascript代码运行次数:0运行复制docker run -it -d --privileged --name extmail -p 80:80 -p 110:110 -p 25:25 -p 143:143 --restart=always -v /data/mail/vmail:/home/domains -v /data/mail/database:/var/lib/mysql/extmail palidin/extmail
如果使用 docker-compose,配置文件如下代码语言:javascript代码运行次数:0运行复制version: '3'
services:
mail:
image: palidin/extmail:latest
hostname: mx.example.com
container_name: extmail
ports:
- "25:25"
- "110:110"
- "143:143"
- "80:80"
privileged: true
environment:
EXTMAIL_LANG: en_US
volumes:
- /data/mail/vmail:/home/domains
- /data/mail/database:/var/lib/mysql/extmail
you can set environment variable EXTMAIL_LANG to change mail system language, options: en_US,zh_CN,zh_TW, en_US is default.
http://example.com/extmail is user interface
http://example.com/extman is admin interface,username root@extmail.org, password extmail*123*
Docker Pull Command
docker pull palidin/extmail
之后可以访问该邮件配置主页用户界面用户登录界面管理员界面 http://IP/extman管理员登录界面账号 root@extmail.org密码 extmail*123*输入密码后可以登录管理员界面错误解决问题1如果遇到错误代码语言:javascript代码运行次数:0运行复制listen tcp4 0.0.0.0:25: bind: address already in use.
说明 25 端口被其他邮件应用启用,需要查看占用端口的进程代码语言:javascript代码运行次数:0运行复制sudo lsof -i:25
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
master 1894 root 13u IPv4 31165 0t0 TCP *:smtp (LISTEN)
master 1894 root 14u IPv6 31166 0t0 TCP *:smtp (LISTEN)
杀掉代码语言:javascript代码运行次数:0运行复制kill -9 1894
问题2登录时报错代码语言:javascript代码运行次数:0运行复制failed: Unknown database 'extmail' at /var/www/extsuite/extmail/libs/Ext/Auth/MySQL.pm line 45需要为 docker 配置数据库创建docker 时加入-v /data/mail/vmail:/home/domains -v /data/mail/database:/var/lib/mysql/extmail参考资料https://www.jianshu.com/p/d94b9495f7f9https://github.com/midoks/imailhttps://hub.docker.com/r/palidin/extmail