如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
moov-io/ach-test-harness 是一个可配置的FTP/SFTP服务器和Go库,旨在交互式测试ACH(自动清算所)交易场景,能够模拟真实世界中的ACH发起、退回、变更、预注和转账流程。该工具提供灵活的响应规则配置,可根据交易详情(如账户号、金额、跟踪号等)自动执行返回、更正等操作,适用于ACH相关系统的开发和测试验证。
拉取镜像
bashdocker pull moov/ach-test-harness:latest
启动容器
默认配置下,服务器监听2222端口(FTP/SFTP),管理接口监听3333端口(指标):
bashdocker run -p 2222:2222 -p 3333:3333 moov/ach-test-harness:latest
通过YAML配置文件自定义服务器参数和响应规则,配置文件结构如下:
yamlACHTestHarness: Servers: FTP: RootPath: "./data" # 根目录路径 Hostname: "0.0.0.0" # 绑定主机名 Port: 2222 # FTP/SFTP端口 Auth: Username: "admin" # 认证用户名 Password: "secret" # 认证密码 PassivePorts: "30000-30009" # 被动模式端口范围 Paths: Files: "/outbound/" # 文件上传路径 Return: "/returned/" # 返回文件路径 Admin: Bind: Address: ":3333" # 管理接口绑定地址(指标端口) Responses: # 响应规则配置 - match: # 匹配条件(所有字段均需匹配) accountNumber: "12345678" # 匹配EntryDetail中的DFI账户号 traceNumber: "121042880000001" # 匹配跟踪号 action: # 匹配后执行的操作 return: code: "R03" # 返回代码(如R03表示账户不存在)
响应规则详细配置
match字段(所有非空字段需同时匹配):
accountNumber: 匹配EntryDetail中的DFI账户号(字符串)amount: 金额匹配条件
min: 最小金额(整数,分)max: 最大金额(整数,分)value: 固定金额(整数,分;与min/max二选一)debit: 空对象{},表示仅匹配借方交易traceNumber: 跟踪号精确匹配(字符串)action字段(支持的操作类型):
correction: ACH更正操作
code: 更正代码(如C01表示账户号更正)data: 更正后的数据(如正确的账户号)return: ACH退回操作
code: 退回代码(如R01表示 insufficient funds)1. 按金额范围退回借方交易
yaml- match: debit: {} # 仅匹配借方交易 amount: min: 100000 # 最小金额:1000.00美元(100000分) max: 120000 # 最大金额:1200.00美元(120000分) action: return: code: "R01" # R01:资金不足
2. 按特定跟踪号退回
yaml- match: # 匹配示例文件ppd-debit.ach中的跟踪号 traceNumber: "121042880000001" action: return: code: "R03" # R03:账户不存在
3. 更正账户号
yaml- match: # 匹配示例文件utility-bill.ach中的账户号 accountNumber: "744-5678-99" action: correction: code: "C01" # C01:更正账户号 data: "744567899" # 更正后的账户号(去除分隔符)
该项目目前处于开发阶段,可能会引入重大变更以达到稳定状态。欢迎社区反馈,建议试用代码或提供意见。
| 渠道 | 说明 |
|---|---|
| 项目文档 | https://moov-io.github.io/ach-test-harness/ |
| *** | @moov_io(获取项目更新和发布信息) |
| GitHub Issue | https://github.com/moov-io/ach-test-harness/issues |
| Slack 频道 | 加入 moov-io slack 中的 #ach 频道进行讨论 |
欢迎贡献!请查看 贡献指南 和 https://github.com/moov-io/ach/blob/master/CODE_OF_CONDUCT.md%E3%80%82%E9%A1%B9%E7%9B%AE%E4%BD%BF%E7%94%A8 Go Modules,要求 Go 1.14 或更高版本。建议通过添加边缘案例、不同输入测试或贡献模糊测试来提高测试覆盖率。
Apache License 2.0,详见 LICENSE。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

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