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

Visual Studio 2022修改Docker镜像名后推送自定义容器失败求助

解决Visual Studio Docker发布时镜像名称与推送不一致的问题

要让Visual Studio推送指定名称的Docker镜像,仅配置DockerfileBuildArguments或DockerfileTag是不够的——因为推送阶段的镜像名由专门的属性控制,而非直接沿用构建参数。你需要在.pubxml文件中添加以下两个核心配置:

  • DockerImageName:指定最终要推送的镜像名称(替换成你的NEWNAME)
  • DockerfileTag:指定镜像的标签(比如latest)

完整的配置片段如下:

<Project>
  <PropertyGroup>
    <!-- 保留原有的其他发布配置项 -->
    <DockerImageName>NEWNAME</DockerImageName>
    <DockerfileTag>latest</DockerfileTag>
    <!-- 移除之前添加的DockerfileBuildArguments中的-t参数,避免冲突 -->
    <!-- <DockerfileBuildArguments>-t NEWNAME:latest</DockerfileBuildArguments> -->
  </PropertyGroup>
</Project>

关键说明:

  1. 之前的问题在于,Visual Studio的Docker推送逻辑会优先读取DockerImageName属性作为镜像名,而非从构建时的-t参数中解析,所以必须显式配置这个属性。
  2. 不要同时使用DockerfileBuildArguments传递-t参数和配置DockerImageName,否则会导致镜像名称冲突,引发推送错误。
  3. 配置完成后,重新加载项目再执行发布操作,此时Visual Studio会构建并推送NEWNAME:latest镜像。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 03:42:08