kimbtechnologies/php_smtp_nginx一个易于使用的PHP和Nginx Docker镜像,支持PHP的mail()函数。若无需邮件功能,可查看基础镜像kimbtechnologies/php_nginx。该镜像内部使用msmtp通过SMTP服务器转发所有邮件,替代PHP配置中的sendmail。
目前支持AMD64、ARMv6、ARMv7及ARM64 (v8)架构。
适用于需要通过PHP发送邮件的Web应用场景,如个人网站、内部管理系统、简单博客等,尤其适合对邮件发送功能有基础需求且希望快速部署的项目。
以下是包含自定义PHP代码的Docker Compose部署示例:
yamlversion: "2" services: web: image: kimbtechnologies/php_smtp_nginx:latest # 使用PHP 8.*版本 container_name: php_smtp_nginx ports: - "127.0.0.1:8080:80" # 将容器80端口映射到主机的8080端口(本地访问) volumes: - ./php/:/php-code/ # 挂载自定义PHP代码目录到容器内 restart: always environment: - SMTP_SERVER= # 邮件服务器主机地址 - SMTP_PORT= # 邮件服务器端口(587用于STARTTLS,465用于TLS) - SMTP_USER= # 邮件服务器认证用户名 - SMTP_PASS= # 邮件服务器认证密码 # - STARTTLS_ONOFF=off # 默认为on(使用465端口时需取消注释并设置为off) # - TLS_ONOFF=off # 默认为on
| 环境变量 | 说明 | 默认值 |
|---|---|---|
| SMTP_SERVER | 必填,SMTP邮件服务器主机地址 | 无 |
| SMTP_PORT | 必填,SMTP服务器端口(587对应STARTTLS,465对应TLS) | 无 |
| SMTP_USER | 必填,SMTP服务器认证用户名 | 无 |
| SMTP_PASS | 必填,SMTP服务器认证密码 | 无 |
| STARTTLS_ONOFF | 可选,是否启用STARTTLS加密(on/off) | on |
| TLS_ONOFF | 可选,是否启用TLS加密(on/off) | on |
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务