推送镜像至GitHub Packages报错“denied: not_found: owner not found”排查
解决推送GitHub Packages时的
denied: not_found: owner not found错误 确认镜像路径中的owner正确性:
你构建镜像用的ghcr.io/vli20/${{ inputs.name }}里的vli20必须是你的GitHub用户名(或你有权限推送的组织名称),且与生成DOCKER_TOKEN令牌的账号完全一致。注意GitHub用户名大小写敏感,必须和账号ID完全匹配;如果令牌属于组织,镜像路径要替换为对应的组织名称。检查登录账号与镜像owner的匹配性:
workflow中登录用的${{ github.actor }}是触发workflow的用户名,如果触发者不是vli20,且未被授权推送至vli20名下的Packages,就会触发owner找不到的错误。可以尝试硬编码登录用户名:echo $CR_PAT | docker login ghcr.io -u vli20 --password-stdin验证令牌的权限范围:
确保你的DOCKER_TOKEN除了write:packages权限外,还勾选了repo权限(如果代码仓库是私有仓库)。私有仓库场景下,Packages推送需要同时具备仓库访问权限和Packages写入权限。确认GitHub Packages的基础设置:
登录GitHub进入对应账号的Packages页面,检查功能是否正常开启,且无特殊推送限制规则。首次推送镜像时GitHub会自动创建对应Packages仓库,但前提是账号权限配置正常。
内容的提问来源于stack exchange,提问作者vlio20
相关产品推荐
相关产品推荐

