docker push 报错:denied: requested access to the resource is denied

本文根据生产环境所遇到的问题提供参考解决办法之一!

docker push ***.com.images:tag error denied: requested access to the resource is denied

在生产环境中,运维与开发人员都会接触到镜像仓库、镜像、容器等技术。本文涉及技术内容”docker harbor仓库“;

  • harbor为目前比较火的私有仓库,一般公司除docker_hub外多数会搭建自己的harbor镜像仓库对镜像进行统一管理;
    docker是目前主流的容器技术,开发人员将写好的代码/jar包、等配置封装成一个镜像image。docker用来存放这些镜像。以容器pod的方式在环境中运行,常用k8s统一管理;—可查阅docker等信息及操作命令
**下方提供测试代表的地址镜像等信息**

harborurl:normaltest.com   #仓库地址   
project:demo      #项目名称
image:apigateway-test:node-tag-5    #测试镜像

#shell脚本及命令行均可测试
docker pull normaltest.com/demo/apigateway-test:node-tag-5
#success  可正常拉取

docker images
#查看有拉取到的镜像
apigateway-test		 node-tag-5        imageid   createtime			imagesize

docker tag imageid	normaltest.com/demo/apigateway-test:node-tag-6
#此处打标签可自定不与现有标签重复即可

docker images
apigateway-test		 node-tag-6      imageid     createtime			imagesize
apigateway-test		 node-tag-5      imageid     createtime			imagesize
#已有准备好推送的镜像

docker push normaltest.com/demo/apigateway-test:node-tag-6
#此处过程省略”一般为等待中~“
denied: requested access to the resource is denied   ---#此处报错

#检查配置 docker.service   daemon.json里的镜像仓库地址  修改完后重启docker  
docker login  normaltest.com/demo -u admin -p ******
#需登录项目的管理员角色账号”项目在harbor上要设置为公开,拉取命令可粘贴harbor参考的。“
Login Succeeded       #提示登录成功后再次尝试

docker push normaltest.com/demo/apigateway-test:node-tag-6
#省略推送过程
node-tag-6: digest: sha***:e8b1**************0851f49f70a1bc06fe57afd76e0c6e9 size: ***
#出现上述内容为推送成功,在harbor的/demo/下可查看推送好的镜像

一般情况为daemon.json 没有配置私有仓库的地址;或没有登陆login;
注意harbor项目为公开,login登陆的账号为管理员或具备权限。
也可在tag和push后,镜像仓库地址前加上使用的账号,
如使用其它账号,可登陆其它账号在harbor上新建项目测试,如果可pull、push都没问题,那在去查看权限和地址项目设置的情况;

你可能感兴趣的:(运维,IT,程序员,docker,容器,运维)