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

Gitea Action构建推送Docker镜像报404错误,疑action版本问题求助

问题分析与解决办法

首先明确:docker/build-push-action@v5版本没问题,不是导致404错误的原因。

你遇到的404错误核心是没匹配Gitea内置Docker镜像仓库的路径规则,具体细节:

  • Gitea的容器镜像仓库要求镜像标签必须包含「用户名/仓库名」的层级结构,比如你的Gitea用户名是robert,正确的镜像标签应该是my.domain.com/robert/ebooks:xxx,而非你当前写的my.domain.com/ebooks:xxx。
  • Gitea会把镜像仓库映射到v2/<用户名>/<仓库名>/blobs/uploads/这类路径,缺少用户名的话,系统找不到对应仓库目录,直接返回404。

另外需要确认两个前置条件:

  1. 你的Gitea已启用容器镜像仓库功能:检查Gitea的app.ini配置文件,[registry]段里的ENABLED需设为true。
  2. 对应镜像仓库已存在:可以在Gitea网页端手动创建和代码仓库同名的容器镜像仓库,部分版本的Gitea会在推送时自动创建,但手动提前创建更稳妥。

修改后的Action配置示例(替换<你的用户名>为实际Gitea用户名):

name: build
run-name: build
on: [push]

jobs:
  build:
    runs-on: default
    steps:
      - uses: actions/checkout@v4
      - name: setup docker buildx
        uses: docker/setup-buildx-action@v3
      - name: login to container registry
        uses: docker/login-action@v2
        with:
          registry: my.domain.com
          username: ${{secrets.USER}}
          password: ${{secrets.TOKEN}}
      - name: build and push docker image
        uses: docker/build-push-action@v5
        with:
          context: .
          file: ./Dockerfile
          push: true
          tags: "my.domain.com/<你的用户名>/ebooks:${{gitea.sha}},my.domain.com/<你的用户名>/ebooks:latest"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 20:02:37