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

docker/build-push-action@v4本地正常但GitHub Action中资产未复制

问题原因分析

docker/build-push-action@v4 默认采用Git仓库上下文进行构建,只会包含仓库中被Git追踪的文件。你在GitHub Action中通过touch assets/foo.js创建的文件属于未被Git追踪的临时文件,不会被纳入构建上下文,因此Docker的COPY assets assets指令无法复制该文件到镜像中。

解决方案

修改docker/build-push-action@v4的配置,指定使用本地工作目录作为构建上下文,同时开启镜像加载(确保构建后的镜像能在本地Docker环境中访问):

- name: Build target
  uses: docker/build-push-action@v4
  with:
      context: .  # 指定当前工作目录为构建上下文
      load: true   # 将构建的镜像加载到本地Docker环境
      target: node_builder
      tags: node_builder:latest
额外验证点

如果问题仍然存在,可以尝试禁用构建缓存,强制重新执行COPY步骤:

- name: Build target
  uses: docker/build-push-action@v4
  with:
      context: .
      load: true
      target: node_builder
      tags: node_builder:latest
      no-cache: true  # 禁用构建缓存

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 11:33:35