如何配置JFrog Pipelines从私有Artifactory拉取构建镜像?
如何将JFrog Pipelines构建镜像改为从自有Artifactory实例拉取
步骤1:将官方镜像同步到自有Artifactory
首先需要把官方运行时镜像迁移到你的Artifactory实例中,有两种方式可选:
方式一:通过Artifactory远程仓库缓存
- 登录自有Artifactory,创建一个Docker类型的本地仓库(例如命名为
pipelines-runtimes) - 创建指向
releases-docker.jfrog.io的远程Docker仓库,开启镜像自动缓存功能,后续拉取时会自动将官方镜像缓存到本地仓库 - (可选)创建虚拟Docker仓库,聚合本地和远程仓库,方便统一管理
- 登录自有Artifactory,创建一个Docker类型的本地仓库(例如命名为
方式二:手动拉取并推送镜像
使用Docker命令完成镜像迁移:# 拉取官方镜像 docker pull releases-docker.jfrog.io/jfrog/pipelines-u18node:16 # 为镜像打上自有Artifactory仓库的标签 docker tag releases-docker.jfrog.io/jfrog/pipelines-u18node:16 你的Artifactory域名/pipelines-runtimes/jfrog/pipelines-u18node:16 # 推送到自有Artifactory仓库 docker push 你的Artifactory域名/pipelines-runtimes/jfrog/pipelines-u18node:16
步骤2:修改流水线配置
将流水线中custom.image.name字段替换为自有Artifactory的镜像地址,同时确保Pipelines已与你的Artifactory建立集成并拥有拉取权限。修改后的流水线示例:
pipelines: - name: testSimple_1 steps: - name: testSimple type: Bash configuration: runtime: type: image image: custom: # 替换为你的自有Artifactory镜像地址 name: 你的Artifactory域名/pipelines-runtimes/jfrog/pipelines-u18node tag: "16" execution: onExecute: - echo "executing step ..."
注意事项
- 确认JFrog Pipelines已配置Artifactory集成,且集成账号拥有目标Docker仓库的拉取权限
- 若使用虚拟仓库,可直接填写虚拟仓库的镜像地址,无需区分本地/远程仓库
- 所有自定义运行时镜像都可按此方式替换,统一从自有Artifactory拉取,减少跨网络拉取耗时
内容的提问来源于stack exchange,提问作者Raj
相关产品推荐
相关产品推荐

