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

如何在Azure DevOps Server 2020制品中存储Tar文件?

Azure DevOps Server 2020存储Docker镜像tar文件的解决方案

关于tar文件是否属于通用包的问题

tar格式的Docker镜像文件属于通用包范畴,Azure DevOps的通用包支持任意格式的文件,但Azure DevOps Server 2020确实不支持通用包功能,这就是你的tar文件被系统忽略的核心原因。

变通方案

1. 直接使用Azure容器注册表(ACR)存储Docker镜像

跳过tar打包步骤,在CI流程中直接将构建好的Docker镜像推送到ACR:

  • 登录ACR:az acr login --name <你的ACR名称>
  • 为镜像添加ACR标签:docker tag <本地镜像名>:<版本> <你的ACR名称>.azurecr.io/<镜像名>:<版本>
  • 推送镜像到ACR:docker push <你的ACR名称>.azurecr.io/<镜像名>:<版本>
    后续SIT环境部署时,直接从ACR拉取镜像即可,这是最贴合Docker镜像管理规范的方案。

2. 上传tar文件到Azure存储账户Blob容器

将tar格式的镜像文件上传至Azure Blob存储,后续部署时再下载加载:

  • CI流程中用Azure CLI上传:az storage blob upload --account-name <存储账户名> --container-name <容器名> --name <目标文件名.tar> --file <本地tar文件路径>
  • 部署阶段执行:az storage blob download --account-name <存储账户名> --container-name <容器名> --name <目标文件名.tar> --file <本地保存路径>,再通过docker load -i <tar文件名>加载镜像。

3. 借助Git LFS存储tar文件

如果团队已启用Git LFS,可以将tar文件作为LFS对象存入Azure DevOps Server的Git仓库:

  • 配置LFS跟踪tar文件:git lfs track "*.tar"
  • 提交并推送文件到Git仓库
    部署时拉取仓库中的LFS文件,再用docker load命令加载镜像。注意此方案适合文件大小适中的场景,过大文件可能拖累仓库性能。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 20:55:04