参考资料

  1. XWiki 是一个开源的、基于 Java 的 Wiki 平台
  2. Apache Spark 是一个开源的分布式计算系统
  3. Jetty 是一个轻量级的开源 Java Web 服务器和 Servlet 容器,由 Eclipse 基金会维护
  4. Ubuntu 是基于 Debian 的开源 Linux 发行版
  5. PostfixAdmin 是一个基于 Web 的邮件管理工具
  6. YOURLS (Your Own URL Shortener) 是一个开源的PHP程序,允许用户创建和管理自定义短链接
  7. 青龙面板(QingLong)是一款开源的、基于Web的定时任务管理平台
  8. PHP是一种开源的服务器端脚本语言

PostfixAdmin 简介

PostfixAdmin 是一个基于 Web 的邮件管理工具,用于管理 Postfix 邮件服务器的虚拟域和用户。它提供了用户友好的界面,支持管理员和域管理员进行邮件账户、别名、域等的管理。

特点

  1. 用户管理:创建、编辑、删除邮件用户。

  2. 域管理:管理虚拟邮件域。

  3. 别名管理:设置邮件别名和转发。

  4. 多语言支持:支持多种语言界面。

  5. 权限管理:支持管理员和域管理员角色。

  6. 安全性:支持密码加密和双因素认证(2FA)。

  7. API 支持:提供 RESTful API 接口。

最新更新内容及时间

  • 最新版本:3.3.13(截至 2023 年 10 月)

  • 更新内容

    • 修复安全漏洞。

    • 改进多语言支持。

    • 优化性能。

镜像下载地址

官网地址

文档地址

Docker 安装示例

docker run -d \
  --name postfixadmin \
  -p 8080:80 \
  -e POSTFIXADMIN_DB_TYPE=mysql \
  -e POSTFIXADMIN_DB_HOST=db \
  -e POSTFIXADMIN_DB_USER=postfixadmin \
  -e POSTFIXADMIN_DB_PASSWORD=yourpassword \
  -e POSTFIXADMIN_DB_NAME=postfixadmin \
  postfixadmin/postfixadmin:latest

YAML 设置教程

  1. 创建 docker-compose.yml 文件:

version: '3'

services:
  postfixadmin:
    image: postfixadmin/postfixadmin:latest
    ports:
      - "8080:80"
    environment:
      - POSTFIXADMIN_DB_TYPE=mysql
      - POSTFIXADMIN_DB_HOST=db
      - POSTFIXADMIN_DB_USER=postfixadmin
      - POSTFIXADMIN_DB_PASSWORD=yourpassword
      - POSTFIXADMIN_DB_NAME=postfixadmin
    depends_on:
      - db

  db:
    image: mysql:5.7
    environment:
      - MYSQL_ROOT_PASSWORD=rootpassword
      - MYSQL_DATABASE=postfixadmin
      - MYSQL_USER=postfixadmin
      - MYSQL_PASSWORD=yourpassword
    volumes:
      - mysql_data:/var/lib/mysql

volumes:
  mysql_data:
  1. 启动服务:

docker-compose up -d

常用错误及问题

  1. 数据库连接失败

    • 检查数据库服务是否运行。

    • 确认数据库用户名和密码正确。

  2. 403 Forbidden 错误

    • 检查文件权限,确保 Web 服务器有权限访问 PostfixAdmin 目录。

  3. 500 内部服务器错误

    • 查看日志文件(/var/log/apache2/error.log/var/log/nginx/error.log)。

    • 检查 config.inc.php 配置是否正确。

  4. 无法发送邮件

    • 检查 Postfix 配置是否正确。

    • 确保 PostfixAdmin 的域名设置与 Postfix 匹配。

  5. 登录失败

    • 确认管理员账户已创建。

    • 检查密码是否加密存储。