在GitHub工作流中生成和推送停靠器时GitHub_Token权限被拒绝写入包 [英] GITHUB_TOKEN permission denied write package when build and push docker in github workflows
本文介绍了在GitHub工作流中生成和推送停靠器时GitHub_Token权限被拒绝写入包的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
docker hub
迁移到GitHub Packages
。通过使用Github工作流,以下是我用来将docker推送到GitHub Packages
:的YAML
name: ghcr_test
on:
push:
branches:
- dev
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Login to GitHub Packages
uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push Docker image
uses: docker/build-push-action@v2
with:
context: .
push: true
tags: ghcr.io/${{ github.repository }}:${{ github.sha }}
GitHub建议在操作工作流中使用GitHub_Token,我已经在组织设置中重新检查它是否具有读写权限,但他们给了我此错误
Error: buildx failed with: error: denied: permission_denied: write_package
有帮助吗?
推荐答案
检查这是否与actions/runner issue 1039
有关似乎GitHub_Token仅在默认分支上有效...在公关分支机构运行时,您需要使用自定义PAT
也检查这是否与this discussion类似:
如果没有,请尝试以described here方式手动推送,以验证您的令牌(先使用原来另一个组织成员推送了相同的包,默认情况下该包是私有的,归该组织成员所有。
由于其他人甚至看不到该包的存在,我们非常困惑。我认为这种默认行为,即新包由上传用户私有,甚至对组织所有者都不可见,这非常令人困惑。
docker login -u USERNAME -p TOKEN ghcr.io
,然后使用docker push
)。然后,GitHub操作可能会起作用。
这篇关于在GitHub工作流中生成和推送停靠器时GitHub_Token权限被拒绝写入包的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文