我正在按照这个链接创建我的第一个docker映像,它成功了,现在我试图从这个链接将这个映像推到我的docker存储库中。但是每当我试图将这个映像推入存储库时,我就会得到这种类型的错误。
denied: requested access to the resource is denied
注:我已成功登录docker
我正在按照这个链接创建我的第一个docker映像,它成功了,现在我试图从这个链接将这个映像推到我的docker存储库中。但是每当我试图将这个映像推入存储库时,我就会得到这种类型的错误。
denied: requested access to the resource is denied
注:我已成功登录docker
当前回答
我知道这个问题已经有很多答案了,但没有一个对我有帮助。
我观察到的是,构建映像非常快,并将其推到docker。IO导致错误:
denied: requested access to the resource is denied
我还注意到做一个
docker image ls
显示我的图像的最新构建是几天前的。
我必须做一个
docker container prune
来摆脱停止的容器,和一个
docker image prune -a
为了摆脱旧的形象。 然后我就可以成功地建立和推广我的形象。
'denied:对资源的请求访问被拒绝'不是来自docker。我是本地码头工人。有趣的是,它在构建过程中并没有失败。
其他回答
我的答案与Azure DevOps相关,类似于我在以下通用管道中遇到的问题(它更具体,但它可能有助于节省时间):
从github获取资源 构建docker映像 推送docker镜像到dockerhub
我在推送拒绝时收到的错误:对资源的请求访问被拒绝发送到这里。
请注意映像名称中包含的变量$(Build.Repository.Name)。它默认是来自github的存储库名称,但为了让您的推送工作,它应该是dockerhub_account_username/your_dockerhub_repository_name。
将$(build . repository . name)替换为dockerhub_account_username/your_dockerhub_repository_name在映像名称字段中用于构建和推送步骤。
dockerhub api需要这一点来知道在哪里推送图像。
登录docker后,您需要用前缀命名您的映像。
例如,如果你在docker-hub中的用户名是Shah,图像应该是:
Shah/firstimage
还需要注意的重要一点是,在标记图像时,首先使用命名空间标记,然后使用存储库/ mydevrepo标记。这让我在使用Docker文档时感到困惑。之后我使用:
docker login
然后我使用“tagged name”来推送我的图像。
docker push {namespace}/mydevrepo
简单的工作解决方案:
访问这里https://hub.docker.com/创建一个私有存储库,例如johnsmith/ PRIVATE -repository,这是您在构建映像时将用于映像的name / repository。
首先,docker登录 其次,我使用"docker build -t johnsmith/private-repository:01 ."来创建图像,并且我使用"docker images"来确认创建的图像,如下面这个黄色框中所示:(对不起,我不能粘贴表格格式,只能粘贴文本字符串)
johnsmith/private-repository(REPOSITORY) 01(TAD) c5f4a2861d6e(IMAGE ID) 2 days ago(CREATED) 305MB(SIZE)
第三,我使用docker push johnsmith/private-repository:01
完成了!
我在git上的问题是项目权限配置。 我已经通过启用“容器注册表”在设置->通用->可见性,项目功能,权限和启用容器注册表为我的项目(链接):