Bank Transfer Test Compose
用于本地快速拉起一组最小化 SFTP / FTP 测试容器。
服务
sftp- 镜像:
atmoz/sftp - 用户:
demo - 密码:
demo123 - 目录:
/home/demo/upload - 主机端口:
2222
- 镜像:
ftp- 镜像:
fauria/vsftpd - 用户:
demo - 密码:
demo123 - 目录:
/home/vsftpd/demo - 主机端口:
2121
- 镜像:
tester- 镜像:
alpine:3.20 - 内置
openssh-client与lftp
- 镜像:
启动
docker compose -f infra/docker/bank-transfer-test/compose.yaml up -d
Java Smoke
SFTP
先编译 sw-business-bank-server:
mvn -f ../water-backend/sw-business-bank/pom.xml -pl sw-business-bank-server -am -DskipTests compile
执行 SFTP smoke CLI:
mvn -f ../water-backend/sw-business-bank/sw-business-bank-server/pom.xml \
-DincludeScope=runtime dependency:build-classpath \
-Dmdep.outputFile=/tmp/sw-business-bank-server.cp
java -cp "$(cat /tmp/sw-business-bank-server.cp):../water-backend/sw-business-bank/sw-business-bank-server/target/classes" \
cn.com.emsoft.sw.bankbusiness.tools.BankTransferSftpSmokeCli \
--local-file infra/docker/bank-transfer-test/tmp/sample.txt \
--host 127.0.0.1 \
--port 2222 \
--username demo \
--password demo123 \
--send-dir /upload/{companyId} \
--company-id C001 \
--channel-code 00001 \
--batch-no SMOKE010 \
--business-date 2026-03-24 \
--remote-file-name smoke-cli-sample.txt \
--download-target infra/docker/bank-transfer-test/tmp/sftp-smoke-download-smoke-cli-sample.txt
FTP
执行 FTP smoke CLI:
java -cp "$(cat /tmp/sw-business-bank-server.cp):../water-backend/sw-business-bank/sw-business-bank-server/target/classes" \
cn.com.emsoft.sw.bankbusiness.tools.BankTransferFtpSmokeCli \
--local-file infra/docker/bank-transfer-test/tmp/sample.txt \
--host 127.0.0.1 \
--port 2121 \
--username demo \
--password demo123 \
--send-dir {companyId} \
--company-id C001 \
--channel-code 00001 \
--batch-no SMOKE010FTP \
--business-date 2026-03-24 \
--remote-file-name smoke-cli-ftp-sample.txt \
--download-target infra/docker/bank-transfer-test/tmp/ftp-smoke-download-smoke-cli-ftp-sample.txt
当前已验证结果
- SFTP:通过
- FTP:通过
- 样本文件 SHA256:
2520ee11a48cb01c9372c91a012549a50a39de40441a4295309993727239653b
停止
docker compose -f infra/docker/bank-transfer-test/compose.yaml down