
ntnn/imapfilter运行imapfilter作为守护进程的Docker镜像:ntnn/imapfilter
使用此镜像的最佳方式是将imapfilter配置存储在Git仓库中。
仓库构建两种版本的镜像:
latest/main 标签版本:始终从lefcha/imapfilter和本仓库的主分支构建。
latest-tag/vX.Y.Z 标签版本:始终从本仓库的主分支和lefcha/imapfilter的最新标签构建。
以下是作为服务栈运行的配置示例:
yaml--- version: '3.4' secrets: imapfilter-git_token: external: true # 包含电子邮件密码 imapfilter-<email>: external: true services: <email>: image: ntnn/imapfilter environment: GIT_TARGET: <git uri> IMAPFILTER_CONFIG: entry_<email>.lua IMAPFILTER_DAEMON: 'yes' GIT_USER: <git工具用户> GIT_TOKEN: /secrets/imapfilter-token secrets: - source: imapfilter-git_token target: /secrets/imapfilter-token - source: imapfilter-<email> target: /secrets/imapfilter-<email> deploy: mode: global
imapfilter配置存储在Git仓库中,其中entry_<email>.lua作为入口点,用于获取电子邮件密码。
过滤功能通过调用do_<email>()函数实现,以下是运行守护进程化imapfilter的代码示例:
luado_<email>() while true do email.INBOX:enter_idle() do_<email>() end
建议为多个电子邮件地址使用多个实例,并通过IMAPFILTER_CONFIG指定不同的入口点。
| 环境变量 | 类型 | 描述 |
|---|---|---|
GIT_USER | string | Git用户名 |
GIT_TOKEN | string | 包含GIT_USER密钥的文件路径 |
GIT_TARGET | string | imapfilter配置仓库的Git URI |
IMAPFILTER_CONFIG | string | 对于基于Git的配置,为仓库内的入口点;否则为配置文件的绝对路径 |
IMAPFILTER_CONFIG_BASE | string | 若配置非基于Git,则为挂载配置的基础路径 |
IMAPFILTER_LOGFILE | string | 可选;日志文件的完整路径和文件名 |
IMAPFILTER_DAEMON | string <yes/no> | imapfilter配置是否以守护进程模式运行 |
IMAPFILTER_SLEEP | integer | 入口点在检查Git配置更新或运行imapfilter之间的休眠秒数 |
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务