makepositive/sfdx-antmakepositive/sfdx-ant 是一款专为 Salesforce 项目构建设计的 Docker 镜像,基于 makepositive/ant 扩展,集成了 Salesforce 生态系统核心工具链。本镜像旨在标准化 Salesforce 项目的构建、测试与部署流程,支持 CI/CD 管道自动化,简化开发与运维环节的工具配置。
从 Docker Hub 拉取最新版本:
bashdocker pull makepositive/sfdx-ant:latest
通过容器运行 sfdx 命令(需提前配置 Salesforce 认证):
bashdocker run --rm -v $(pwd):/workspace -w /workspace makepositive/sfdx-ant:latest sfdx force:org:list
-v $(pwd):/workspace:挂载本地项目目录到容器内 /workspace(项目文件需包含 sfdx-project.json 等配置)。-w /workspace:设置工作目录为 /workspace。sfdx force:org:list:示例命令,列出已认证的 Salesforce 组织。执行项目中的 Ant 构建目标(如 deploy):
bashdocker run --rm -v $(pwd):/workspace -w /workspace makepositive/sfdx-ant:latest ant -f build.xml deploy
ant -f build.xml deploy:执行 Ant 脚本 build.xml 中定义的 deploy 目标(需确保脚本中引用的工具路径适配容器环境)。在 bitbucket-pipelines.yml 中使用镜像执行增量部署:
yamlimage: makepositive/sfdx-ant:latest pipelines: default: - step: name: Salesforce 增量部署 script: # 1. 授权 Salesforce 组织(使用预配置的认证 URL) - sfdx auth:sfdxurl:store -f ./sfdx-auth-url.txt -a target-org # 2. 生成增量元数据清单(对比当前提交与上一次提交) - sfdx sgd:source:delta --from $(git rev-parse HEAD~1) --to HEAD --output ./delta-metadata # 3. 执行 Ant 部署(指定增量元数据路径) - ant -f build.xml deploy -Dmetadata.path=./delta-metadata
在 azure-pipelines.yml 中配置作业:
yamljobs: - job: Build_Deploy pool: vmImage: 'ubuntu-latest' container: image: makepositive/sfdx-ant:latest # 指定镜像 steps: - script: | # 授权 Salesforce 组织(通过管道安全变量传入认证信息) sfdx auth:sfdxurl:store -f $(SFDX_AUTH_URL_FILE) -a target-org # 生成增量元数据并部署 sfdx sgd:source:delta --from $(Build.SourceVersion) --to HEAD --output ./delta ant -f build.xml deploy -Dmetadata.path=./delta displayName: '执行 Salesforce 构建部署' env: # 从管道安全变量读取认证文件路径 SFDX_AUTH_URL_FILE: $(System.DefaultWorkingDirectory)/sfdx-auth-url.txt
使用镜像时可配置以下环境变量(根据项目需求调整):
SFDX_AUTH_URL:Salesforce 认证 URL(非交互式授权 sfdx,替代手动登录)。ANT_OPTS:Ant 运行时 Java 选项(如 -Xmx512m 调整内存)。SFDC_USERNAME/SFDC_PASSWORD:Salesforce 组织的用户名和密码(传统认证方式,不推荐明文存储)。Vlocity_BUILD_OPTS:Vlocity Build 工具自定义参数(如 --api-version 58.0 指定 API 版本)。SFDX_AUTH_URL)需通过 CI/CD 管道的“安全变量”管理,禁止明文存储。-v 参数挂载项目文件(如 sfdx-project.json、build.xml)到容器内 /workspace。makepositive/sfdx-ant:1.0.0),避免 latest 标签自动更新导致工具版本变更。





manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务