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

已成功登录GitHub Action,推送镜像至GHCR.io时遇403错误

解决GHCR推送镜像时的403 Forbidden错误

可能的原因及解决方案

1. GITHUB_TOKEN权限不足

默认的GITHUB_TOKEN在GitHub Actions工作流中,可能未授予推送GHCR包所需的packages:write权限。需显式配置权限:

在工作流的docker任务下添加权限设置:

jobs:
  docker:
    runs-on: ubuntu-latest
    permissions:
      packages: write
      contents: read  # 用于拉取仓库代码,按需配置

或者在仓库的Settings > Actions > General页面,将"Workflow permissions"设置为"Read and write permissions",确保所有工作流默认拥有读写权限。

2. 镜像名称大小写或路径错误

GHCR对用户名/组织名的大小写敏感,确认REGISTRY_IMAGE中的<my github>与你的GitHub用户名/组织名完全一致(包括大小写)。例如:

  • 正确格式:ghcr.io/your-username/your-repo
  • 避免大小写不匹配,比如Ghcr.io/Your-Username/your-repo会导致权限验证失败。

3. 包所有权与权限验证

尽管你是包的管理员,仍需确认:

  • 包的命名空间正确:个人仓库的包应归属个人用户名,组织仓库的包应归属组织名。
  • 若为组织仓库,确保你的账号在组织中拥有足够权限(比如组织的Packages管理员权限)。

4. 工作流触发与推送条件确认

你的推送条件是push: ${{ github.event.action == 'published' }},仅当Release状态为Published时才会执行推送。确认触发工作流的Release不是Draft状态(Prerelease仍属于Published状态,无需排除)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 18:02:48