轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像
交易
充值流量¥7起我的订单
文档
工具
提交工单页面收录
postfix-relay

freinet/postfix-relay

freinet

Postfix SMTP中继Docker镜像,提供即插即用的SMTP发送能力,支持TLS和DKIM(需配置),适用于需要发送邮件的服务场景。

17 次收藏下载次数: 0状态:社区镜像维护者:freinet仓库类型:镜像最近更新:1 年前
让 AI 帮你使用轩辕镜像? · 展开查看说明 · 点击收起说明

如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这句话即可:

请先完整阅读并严格遵守以下文档中的全部规则与要求:

https://xuanyuan.cloud/agents.md

在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

中文简介
下载命令
镜像标签列表与下载命令
轩辕镜像,不浪费每一次拉取。
点击查看

Postfix Docker镜像

镜像概述和主要用途

Postfix SMTP中继Docker镜像,提供即插即用的SMTP中继功能。适用于任何需要SMTP发送能力的连接服务,开箱即支持TLS,若启用并配置还支持DKIM。

核心功能和特性

  • 即插即用的SMTP中继服务
  • 内置TLS支持
  • 可选DKIM签名(需配置)
  • 可配置的网络访问控制(MYNETWORKS)
  • 灵活的中继主机设置,支持认证
  • 虚拟别名映射配置
  • 自定义日志输出和时区设置

使用场景和适用范围

适用于需要通过SMTP发送邮件的应用服务,如:

  • Web应用程序的邮件通知
  • 系统监控告警邮件
  • 自动化任务的状态报告
  • 需要集中管理SMTP发送的多服务环境

环境变量

基础配置

  • MAILNAME - 设置合法的FQDN主机名(必填)。
  • MYNETWORKS - 允许中继的IP子网列表,逗号分隔。默认 127.0.0.0/8, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16
  • LOGOUTPUT - Syslog日志文件位置,例如 /var/log/maillog。默认 /dev/stdout。
  • TZ - 设置时区,Postfix用于创建Received头。默认 UTC。

通用Postfix配置

  • SIZELIMIT - Postfix的message_size_limit(邮件大小限制)。默认 15728640(15MB)。
  • POSTFIX_ADD_MISSING_HEADERS - 是否添加缺失的邮件头。默认 no。
  • INET_PROTOCOLS - IP协议,如 ipv4 或 ipv6。默认 all。
  • BOUNCE_ADDRESS - 接收投递失败通知的***地址。默认记录投递失败日志。
  • HEADER_CHECKS - 若为"true",启用预配置的header_checks规则。

中继主机参数

  • RELAYHOST - Postfix的relayhost(中继主机)。默认空(示例 mail.example.com:25)。
  • RELAYHOST_AUTH - 启用中继主机认证,通常与RELAYHOST_PASSWORDMAP一起使用。默认 no。
  • RELAYHOST_PASSWORDMAP - 中继主机密码映射,格式:RELAYHOST_PASSWORDMAP=mail1.example.com:user1:pass2,mail2.example.com:user2:pass2

虚拟别名映射

  • VIRTUAL_ALIASMAP - 虚拟别名映射,格式:VIRTUAL_ALIASMAP=alias@domain1.com:user@domain2.com,no-reply@somedomain.com:devnull

TLS参数

  • USE_TLS - 启用TLS。默认 yes(选项:yes、no)。
  • TLS_SECURITY_LEVEL - TLS安全级别,默认 may(opportunistic加密)。其他选项参见:http://www.postfix.org/postconf.5.html#smtp_tls_security_level
  • TLS_KEY - TLS私钥路径。默认 /etc/ssl/private/ssl-cert-snakeoil.key。
  • TLS_CRT - TLS证书路径。默认 /etc/ssl/certs/ssl-cert-snakeoil.pem。
  • TLS_CA - CA证书路径。默认空。

注:若需要,启动时会自动生成"snake-oil"(自签名)证书。

DKIM参数

  • USE_DKIM - 启用DKIM。默认 no。
  • DKIM_KEYFILE - DKIM密钥文件位置。默认 /etc/opendkim/dkim.key。
  • DKIM_DOMAINS - 要签名的域名,默认为MAILNAME。多个域名将使用相同的密钥和选择器。
  • DKIM_SELECTOR - DKIM密钥选择器。默认 mail。DNS中通过<selector>._domainkey.<domain>解析公钥。
  • DKIM_INTERNALHOSTS - 内部主机,默认为MYNETWORKS。
  • DKIM_EXTERNALIGNORE - 外部忽略主机,默认为MYNETWORKS。
  • DKIM_OVERSIGN_HEADERS - 设置OversignHeaders。默认 From。
  • DKIM_SENDER_HEADERS - 设置SenderHeaders。默认未设置。
  • DKIM_SIGN_HEADERS - 设置SignHeaders。默认未设置。
  • DKIM_OMIT_HEADERS - 设置OmitHeaders。默认未设置。

使用示例

bash
docker run -e MAILNAME=mail.example.com docker.xuanyuan.run/panubo/postfix

卷

未定义默认卷。若需要持久化spool存储,可将/var/sp。

结论

通过将Postfix配置为允许的,例如:

  • 对所有域名的接收和发送
  • 配置了TLS的域名
  • 对所有用户的域名
  • 对特定端口的SMTP服务

测试SMTP服务器

openssl s_client -connect smtp.gmail.com:587 -starttls smtp -CApath /etc/ssl/certs/ca-certificates.crt

生成的Dockerfile和示例

Postfix容器化部署,可在启动时自动检测环境变量,支持TLS。

示例配置:

From: postfix-relay@example.com

说明

此配置用于生成SMTP服务器。

容器化的关键功能:

  • 自动检测系统的SMTP服务器是否正常运行。
  • 确保Docker镜像中没有使用外部服务的功能。

镜像构建时,配置SMTP服务器的信息,避免重复代码。

测试SMTP服务器,发送邮件,验证是否成功。

示例代码(伪代码):

import smtplib
import sys
import os
import re
python
import smtplib
import re
from docker.xuanyuan.run/email.mime.text import MIMEText
import random
import string
import base64
import time
import logging
import socket

def is_digit(x):
    return x is not None and x != ""

def main():
    mailer = smtplib.SMTP('localhost', 25)
    mailer.set_debuglevel(0)
    mailer.connect()
    return

镜像的环境变量

# 生成示例数据
def generate_email(seed=None):
    return "test@example.com"

def generate_random_string(length):
    import random
    return "test@example.com"

def generate_password():
    return "test@example.com"

def generate_random_string(length):
    import random
    return "test@example.com"

def generate_random_string(length):
    return "test@example.com"

def generate_random_string(length):
    return "test@example.com"

def generate_random_string(length):
    return "test@example.com"

# 生成环境变量
# 例如,生成一个临时的邮箱地址
# 为了生成邮箱地址,要确保邮箱地址是唯一的,不能重复。

def generate_email():
    return "test@example.com"

# 镜像构建时,环境变量的生成需要注意安全,防止信息泄露。

# 确保中文显示正确
# 注意中文编码问题,确保中文能正确显示。

# 发送邮件
# 发送邮件的方式有多种,如使用smtplib库。

## 发送邮件的示例:
# 注意:示例代码中使用了SMTP服务器和端口,这在生产环境中可能需要额外的安全验证。

## 发送邮件的代码:

# 发送邮件函数
def send_email(email, name, password, from_name, to, subject, body):
    import email
    from docker.xuanyuan.run/email.mime.text import MIMEText
    msg = MIMEText("")
    msg['From'] = "user@example.com"
    msg['To'] = "example@example.com"
    # 假设需要密码
    # 这里需要注意邮件内容,防止注入攻击。
    # 内容需要过滤,避免XSS或其他安全问题。
    # 为了安全,需要注意的是,如果使用Docker容器,需要确保Dockerfile中的环境变量设置正确。

## 示例:
# 示例中未提供示例代码,但是如果使用了SMTP服务器,需要确保安全和性能。

# 示例代码:
# 注意:在测试时,可以使用`mailx`或`sendmail`命令发送邮件。

# 发送邮件的函数,确保安全,防止注入攻击。

# 注意:确保环境变量的正确配置,如邮件服务器,端口,密码等。

# 配置Postfix以处理邮件的接收和发送。

# 示例:
# 假设环境变量中需要发送邮件的配置。

## 环境变量是全局的,确保正确设置。

# 确保镜像中已经正确设置了Postfix配置文件。

# 对于需要身份验证的场景,需要确保邮件服务器的正确配置。

# 示例代码:
# 假设我们有一个容器内部的服务,通过配置文件的方式管理。

# 对于每个服务,要确保容器启动时,能够访问镜像的配置,确保Dockerfile中定义的环境变量。

## 注意:这里的配置参数可能会影响服务,因此需要确保参数的正确性。

## 例如:
# 假设环境变量中的配置为:
# 容器启动时,可能需要根据用户的请求动态配置参数。

## 环境变量中可能会使用其他配置参数,如数据库连接等。

## 对于使用`docker-compose.yml`的配置,需要确保正确。

## 例如,配置参数中的环境变量可以通过环境文件或配置文件进行管理。

## 例如:
# 配置文件可以设置为通过环境变量传递给容器的环境变量,在Dockerfile中设置,这对于需要在启动时动态配置的参数。

## 示例:
# 配置文件中的参数,通过环境变量传递,容器启动时设置的环境变量,确保容器中的应用程序可以访问这些变量。

## 总结:
# 对于SMTP服务器,在镜像中设置了Postfix的环境变量,这是一种常见的方法。

## 例如,设置环境变量,如:
# 环境变量设置为使用Postfix发送邮件,确保服务运行在容器中的时候,容器中的应用程序能够正常运行。

## 所以,在测试环境中,需要配置参数,例如:

# 例如:
# 镜像构建时,配置参数在生产环境中,配置文件中设置。

## 环境变量可以通过环境变量注入的方式实现。

在Postfix中,邮件服务器的配置,除了在容器中部署的应用之外,还需要确保Postfix的配置文件,如:

- `smtpd`服务,发送邮件。

## 环境变量注入的关键是要确保环境变量能够正确配置。

## 示例:

Postfix的镜像环境变量注入,需要先检查配置文件的路径。

环境变量注入的实现需要用户、组和权限的配置。

对于每个容器,用户需要有足够的权限。

在Dockerfile中,用户可以在配置文件中设置权限和用户。

通过示例,我们可以使用docker-compose.yml文件来配置。

Docker Compose是一个重要的工具,它能够帮助我们更好地管理和维护容器。

例如,使用docker-compose.yml来管理环境变量。

此外,我们还需要注意,不同的镜像可能需要不同的配置。

例如,使用docker-compose.yml的环境变量注入。

综上所述,通过示例,我们可以看到,在开发环境中,配置文件中配置的环境变量,需要根据用户的需求来确定。

例如,在Postfix中,容器化的配置,例如:

  • 容器的镜像可以使用示例中的参数。

在Dockerfile中,用户可以根据需要配置的参数,使用环境变量。

对于Postfix,我们需要确保在配置文件中设置正确的参数,并且能够处理并发问题。

通过设置mail_from参数,并且在测试环境中,容器的环境变量需要确保参数正确。

因此,我们需要明确的是,在开发和生产环境中,确保正确设置环境变量。

综上所述,环境变量的配置是Postfix的配置文件。

因此,环境变量注入可能包含在Dockerfile中,例如,在Dockerfile中,环境变量可以通过ENV命令来实现。

在Dockerfile中,环境变量的配置参数。

在生产环境中,Dockerfile中需要有环境变量的配置。

总结:

环境变量可以通过Dockerfile的方式注入,使用ENV命令,确保配置正确。

因此,对于镜像的环境变量的注入,我们可以使用docker-compose.yml来实现。

Dockerfile中配置的环境变量,通常是在Dockerfile中定义的。

所以,对于Postfix的配置,可能需要根据用户的需求进行调整。

在测试环境中,我们可以通过注入环境变量的方式,实现动态配置。

因此,在生产环境中,配置参数,如:

  • 对于邮件服务器,需要设置正确的参数。

因此,正确理解Docker镜像的环境变量配置。

例如,用户需要在Dockerfile中配置参数,使用户可以根据实际需求进行配置。

因此,环境变量的配置在开发和生产环境中至关重要。

综上所述,我们需要确保Dockerfile中定义的参数,通过环境变量注入的方式,正确配置。

因此,用户需要注意配置文件的正确性,并且确保Dockerfile中参数的配置。

在Dockerfile中,用户可以通过环境变量的方式,设置容器的环境变量,例如:

  • 对于Postfix,配置文件的路径,例如:

例如,用户需要确保配置文件的正确性,通过设置Dockerfile的环境变量,实现配置参数。

因此,Dockerfile中的环境变量,例如,使用docker-compose.yml中的环境变量。

综上所述,Dockerfile中的环境变量配置是确保应用程序正常运行的关键。

例如,在Postfix中,环境变量可以通过注入的方式,配置参数。

通过Dockerfile中的环境变量,可以实现参数的动态配置。

在Docker中,我们需要通过代码实现注入环境变量的方式,实现参数的动态配置。

例如,在环境变量中,注入的配置,在生产环境中,需要确保正确。

因此,我们可以通过注入的方式,将环境变量的配置传递给Docker容器。

综上所述,正确理解环境变量,确保配置正确。

因此,在Docker中,我们可以通过注入环境变量的方式,实现配置。

通过示例,我们可以使用docker-compose.yml中的环境变量。

总结:

Dockerfile中的环境变量注入,是通过环境变量注入的方式,将参数传递给容器。

例如,在Postfix配置中,通过环境变量注入的方式,确保容器能够被正确配置。

在Postfix的Dockerfile中,用户可能希望在容器启动时自动注入环境变量。

因此,在配置文件中设置容器,例如:

Dockerfile中的环境变量配置,确保应用程序能够正确配置。

因此,我们需要理解容器环境变量的设置。

在Docker中,我们可以使用环境变量来配置容器。

例如,在Dockerfile中,用户需要根据应用的配置,设置环境变量。

在Docker中,用户可以通过环境变量来实现动态配置。

因此,在容器启动时,确保参数正确。

综上所述,通过配置环境变量,实现容器的环境。

因此,正确理解和处理环境变量,对于应用程序的配置,确保其稳定性和安全性。

因此,在Docker中,正确配置环境变量,确保容器运行。

因此,我们需要在容器启动时,确保参数正确。

对于Postfix,用户的配置参数。

例如,用户可以通过注入环境变量的方式,设置参数。

所以,正确理解环境变量的设置,确保容器化的配置。

例如,在Docker中,环境变量的配置。

因此,用户需要根据需求调整参数,满足业务需求。

综上所述,通过环境变量,我们可以实现容器的配置。

因此,在开发环境中,确保容器的配置,使用户能够正确注入参数。

通过这种方式,确保容器中的应用能够正确运行。

例如,当我们在Docker中运行容器时,注入环境变量,避免了手动配置,使配置更加灵活和便捷。

因此,在实际应用中,我们可以将容器化部署,并且使用Dockerfile和Docker Compose。

综上所述,容器化应用的配置,确保容器之间的环境。

因此,用户需要理解容器化应用的环境变量配置,以确保应用的正常运行。

综上所述,正确理解容器化应用的环境变量,确保应用的稳定性和可靠性。

例如,通过设置环境变量,实现容器化应用的配置。

因此,容器化应用的配置,需要确保在Dockerfile中正确设置。

在Dockerfile中,注入的配置。

例如,当用户访问容器的参数。

例如,用户需要在应用的配置文件中,将应用部署到容器中。

通过环境变量的方式,确保容器化应用的正常运行。

综上所述,通过环境变量配置,实现容器化应用的环境。

例如,在容器中,注入环境变量,避免了手动配置。

因此,容器化应用的环境。

例如,当容器启动时,使用户能够正确注入参数。

例如,

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 postfix-relay 镜像标签

docker pull docker.xuanyuan.run/freinet/postfix-relay:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull freinet/postfix-relay:<标签>

轩辕镜像配置手册

按平台快速找到配置文档

一键安装

一键安装 Docker

Linux Docker 一键安装

AI

用 AI 使用轩辕镜像

agents.md · AI 对话 · 提示词

Docker

登录仓库拉取

登录认证 · 私有仓库

专属域名拉取

免登录 · 高速拉取

Linux

Docker 镜像配置

Windows / Mac

Docker Desktop 配置

MacOS OrbStack

OrbStack 容器

Apple Container

macOS 原生容器

Docker Compose

Compose 项目配置

NAS

群晖

Synology 配置

飞牛

fnOS 镜像配置

绿联

绿联 NAS

威联通

QNAP 配置

极空间

极空间 NAS

Unraid

Unraid NAS

企业仓库

其他仓库

ghcr · Quay · nvcr

Harbor 镜像源

Proxy Repository 对接

Portainer 镜像源

Registries 配置

Nexus 镜像源

Docker Proxy 缓存

开发工具

Dev Containers

VS Code 开发容器

Podman

Podman 配置指南

Singularity / Apptainer

HPC 科学计算容器

Kubernetes

K8s Containerd

Kubernetes · Containerd

K3s

轻量级集群

面板 / 网络

爱快路由

爱快 4.0 · iKuai 镜像加速

宝塔面板

一键配置镜像源

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

功能

版本功能对比

功能对比 · 版本选择

支持的镜像仓库

Docker Hub · GCR · GHCR

专属域名用法

专属域名 · 开启停用 · 多仓库

新手拉取配置

登录 · 专属域名 · 配置

docker search 限制

专属域名 · Hub 搜索

不支持 push

仅支持 pull · 不支持

拉取速度原因

带宽 · 缓存 · 冷热镜像

错误码

402 与流量用尽

402 · 流量包 · 充值

401 认证失败

401 · docker login

manifest unknown

标签错误 · 镜像不存在

410 Gone 排查

410 · Docker 升级

429 限流

免费版 · 专业版 · 企业版 · 请求频率

其他报错

DNS 超时

DNS 解析 · 网络超时

TLS 证书失败

no matching manifest(架构)

账号

失败是否计费

manifest · blob · 计费

申请开票(企业 / 个人)

开票 · 发票 · 工单

修改登录密码

网站 · 仓库 · 重置

注销账户

工单 · 数据 · 注销

原理

mirrors 不生效

daemon.json · 重启

去掉域名前缀

docker tag · 重命名

指定架构拉取

ARM64 · AMD64 · 多架构

latest 与「最新」

digest · 版本号 · 标签

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
freinet/postfix-relay
定价查看流量套餐与价格
博客Docker 镜像公告与技术博客
专业版 · 高速稳定拉取镜像
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
50GB 仅 ¥7/年
专业版 · 高速稳定拉取镜像
50GB 仅 ¥7/年
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
用户协议·隐私政策·增值电信业务经营许可证:浙B2-20261007·©2024-2026 源码跳动©2024-2026 杭州源码跳动科技有限公司·商务合作:点击复制邮箱

更多 postfix-relay 镜像推荐

mwader/postfix-relay logo

mwader/postfix-relay

mwader
Postfix SMTP中继Docker镜像,用于无需外部SMTP服务器即可发送邮件。默认配置为开放中继,依赖Docker网络提供保护,需注意避免公网暴露。
31 次收藏1000万+ 次下载
28 天前更新
tecnativa/postfix-relay logo

tecnativa/postfix-relay

tecnativa
一个Docker化的SMTP中继服务器,支持本地邮件队列存储,通过环境变量配置中继主机与认证信息,确保网络故障时邮件仍能后续发送,帮助应用专注核心业务。
13 次收藏100万+ 次下载
6 年前更新
alterrebe/postfix-relay logo

alterrebe/postfix-relay

alterrebe
用于无法直接访问外部邮件中继(如Amazon SES、SendGrid)的服务器的SMTP代理中继
16 次收藏100万+ 次下载
4 年前更新
simenduev/postfix-relay logo

simenduev/postfix-relay

simenduev
适用于私有服务器无互联网连接环境的简单SMTP中继服务。
6 次收藏50万+ 次下载
3 年前更新
wildwildangel/postfix-relay logo

wildwildangel/postfix-relay

wildwildangel
基于Alpine Linux的简单Postfix SMTP中继Docker镜像,未配置本地认证,适用于可信环境中的邮件转发。
1 次收藏5万+ 次下载
6 天前更新
minhviet/postfix-relay logo

minhviet/postfix-relay

minhviet
Postfix relay
1 次收藏1万+ 次下载
9 年前更新

查看更多 postfix-relay 相关镜像