You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过CURL或jfrog rt命令实现两个JFrog Artifactory制品复制?

当然没问题!完全不用折腾UI,用jfrog rt命令(JFrog官方CLI工具)或者curl调用Artifactory的REST API都能搞定跨实例的制品复制,下面给你详细讲两种方案,推荐优先用CLI,更省心:

方案一:使用JFrog CLI(jfrog rt命令,推荐)

JFrog CLI是官方提供的工具,语法简洁、自带重试机制和进度反馈,比curl更易用。

步骤1:配置两个Artifactory实例的连接

先给源和目标实例分别配置连接(可以用API Key代替密码,更安全):

# 配置源Artifactory实例
jfrog rt c add source-artifactory \
  --url=https://your-source-artifactory-url/artifactory \
  --user=your-source-username \
  --password=your-source-api-key-or-password

# 配置目标Artifactory实例
jfrog rt c add target-artifactory \
  --url=https://your-target-artifactory-url/artifactory \
  --user=your-target-username \
  --password=your-target-api-key-or-password

步骤2:执行复制操作

根据你的需求选择单个或批量复制:

  • 复制单个制品:
    jfrog rt cp source-artifactory://source-repo/path/to/your-artifact.jar target-artifactory://target-repo/destination/path/
    
  • 批量复制某路径下所有制品(支持通配符**匹配所有子目录):
    jfrog rt cp source-artifactory://source-repo/your/path/** target-artifactory://target-repo/destination/path/
    
  • 可选参数:
    • --dry-run:预执行检查,不实际复制,适合验证路径是否正确
    • --flat:不保留源目录结构,所有制品直接放到目标根路径
    • --sync-deletes:同步源路径中的删除操作(目标中存在但源中已删除的制品也会被删除)
方案二:使用curl调用Artifactory REST API

如果你不想安装CLI,直接用curl调用Artifactory的REST API也能实现,适合临时操作或脚本集成。

单次复制单个/批量制品

通过/api/copy端点实现跨实例复制,需要同时提供源和目标实例的认证信息:

# 复制单个制品
curl -u target-username:target-password \
  -X POST "https://target-artifactory-url/artifactory/api/copy/source-repo/path/to/artifact.jar?to=target-repo/destination/path/&remote=https://source-artifactory-url/artifactory&remoteUser=source-username&remotePassword=source-api-key-or-password"

# 批量复制某路径下所有制品(添加dry=1可先做预检查)
curl -u target-username:target-password \
  -X POST "https://target-artifactory-url/artifactory/api/copy/source-repo/your/path/**?to=target-repo/destination/path/&remote=https://source-artifactory-url/artifactory&remoteUser=source-username&remotePassword=source-api-key-or-password&dry=1"

注意事项

  • 确保两个Artifactory实例之间网络互通,并且使用的账号具备:源实例的读取权限、目标实例的写入权限
  • 用API Key代替明文密码可以提升安全性,在Artifactory的用户设置中可以生成API Key
  • 如果需要定期自动复制,还可以通过Artifactory的内置复制规则(REST API或UI)配置定时同步,但上述命令适合单次临时复制

内容的提问来源于stack exchange,提问作者Ranga

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 09:42:16