守护程序的错误响应:从守护程序获取 "https://ghcr.io/v2/" 的响应被拒绝了。

10

当我在使用GitHub action时,遇到了来自守护进程的错误响应:获取"https://ghcr.io/v2/":被拒绝:被拒绝

我使用了登录命令echo $CR_PAT | docker login ghcr.io -u $ghcr_user -password-stdin

输入图像描述此处

3个回答

9
我相信你想要的命令应该是:
echo "$CR_PAT" | docker login ghcr.io -u "$ghcr_user" --password-stdin

这将为变量添加引号,并在长参数后面添加第二个破折号。它还假定这些变量已经定义。

话虽如此,在 GitHub Actions 中执行登录时,我倾向于使用以下代码:

    - ​name​: ​Login to GHCR 
      ​uses​: ​docker/login-action@v1  
      ​with​: 
        ​registry​: ​ghcr.io 
        ​username​: ​${{ secrets.GHCR_USERNAME }} 
        ​password​: ​${{ secrets.GHCR_TOKEN }}

0

对我有效的是这个

docker login --username MY_GITHUB_USERNAME --password-stdin
[paste value of $CR_PAT here]

-1

不要使用 echo $CR_PAT | docker login ghcr.io -u $ghcr_user --password-stdin,请使用

docker login ghcr.io -u $ghcr_user -p $CR_PAT

enter image description here


1
使用CLI的-p选项是不安全的。应该使用--password-stdin选项。 - Shea Lavington

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接