写点什么

Docker——denied: requested access to the resource is denied 问题以及解决方法

作者:A-刘晨阳
  • 2022-11-16
    北京
  • 本文字数:991 字

    阅读完需:约 3 分钟

问题

使用 docker push 推送镜像时,出现 denied: requested access to the resource is denied 的报错。


解析

  原因和 Git push 代码一样,为了安全起见,在 Docker Hub 无法确定操作者的情况下,是无法完成 push 操作的。在 Git 中是通过配置文件 SSH Keys 来记住用户,那么在 Docker Hub 中也是通过配置文件。  通常在你第一次使用 docker login 命令登录你的 Docker 仓库时,会自动在你的机器上生成一个 config.json 的文件,目录具体位置不定。如果你是 root 用户操作,一般在/root/.docker/config.json 目录。如果是普通用户,那么可能在~/.docker/config.json 目录上。具体还是要看你登录的时候显示的哪个目录。


这里说一下,直接用-u 参数指定登录名或者直接 docker login 在输入用户名密码登录都可以。


例如:↓



画红框的就是你 config.json 的绝对路径。

解决方法

  原因知道了,解决方法其实很简单。只需要使用 docker login 登录即可。如果上面的目录中有 config.json 文件,则会更新,如果没有,则会生成一个新的。接着再使用 docker push 镜像就 ok。下次 push 镜像的时候,也就不需要登录了。


登录:


[root@bogon]# docker loginLogin with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.Username: liuchenyangPassword: WARNING! Your password will be stored unencrypted in /root/.docker/config.json.Configure a credential helper to remove this warning. Seehttps://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded
复制代码

注意

一定要注意自己上传的时候镜像名称对不对,还有路径对不对,我这边解决这个问题之后还是会报这个错,找了半天才找出来,还有一个问题就是给镜像打包的时候名字有问题,因为我创建了一个 liblarby,上传镜像的时候就多了一层目录,所以因为名字不正确(可以查看最上面的第一张图片),才会出现相同的报错,最后,重新 push 一下,就 ok 了。(tagname 是你的镜像的版本号)


docker push liuchenyang/mycentos:tagname
复制代码



最后就可以看到我们的镜像存储库了。



总结

相关文章:


①、Docker发布/上传镜像到dockerhub&&下载/拉取镜像&&删除dockerhub镜像②、Linux中安装/部署docker-compose③、Docker搭建harbor私有镜像仓库(命令行模式)④、Linux中基于Docker搭建harbor私有镜像仓库(超级详细)🔥🔥


发布于: 刚刚阅读数: 3
用户头像

A-刘晨阳

关注

还未添加个人签名 2022-06-16 加入

本人公众号《小刘Linux》,优质博主,欢迎大家的关注

评论

发布
暂无评论
Docker——denied: requested access to the resource is denied问题以及解决方法_Docker_A-刘晨阳_InfoQ写作社区