我试图将停靠者图像推送到GCP,但我仍然收到以下错误:
unauthorized: You don't have the needed permissions to perform this operation, and you may have invalid credentials. To authenticate your request, follow the steps in: https://cloud.google.com/container-registry/docs/advanced-authentication我一步一步地遵循这个https://cloud.google.com/container-registry/docs/quickstart,直到码头推进,一切都很好。
很明显,GCP项目
我已经试过了:
gcloud auth configure-docker
gcloud init
gcloud init
我做错什么了?
谢谢你的建议
发布于 2020-04-12 09:19:35
如果它能帮助那些和我一样处境的人:
重要:我的用户不在停靠用户组中。然后,我必须将
sudo放在任何docker命令之前。
当gcloud和docker不使用相同的config.json时
当我使用gcloud凭证助手时:
gcloud auth configure-docker它更新了我的$HOME:[/home/{username}/.docker/config.json]中的JSON文件。但是,当注销并再次从Docker CLI登录时,
sudo docker login该警告显示了一条不同的路径,这在Isudo-ed中是有意义的:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.sudo无处不在
为了解决这个问题,我执行了以下步骤:
# Clear everything
sudo docker logout
sudo rm /root/.docker/config.json
rm /home/{username}/.docker/config.json
# Re-login
sudo docker login
sudo gcloud auth login --no-launch-browser # --no-launch-browser is optional
# Check both Docker CLI and gcloud credential helper are here
sudo vim /root/.docker/config.json
# Just in case
sudo gcloud config set project {PROJECT_ID}现在我可以将我的Docker映像推送到GCR和Docker集线器。
https://stackoverflow.com/questions/59592243
复制相似问题