在提供用户名和密码后,我将"docker login https://hub.docker.com"更改为"docker login docker.io",这样就可以正常运行了。
然后按照以下命令操作:
docker tag local-image:tagname new-repo:tagname
docker push new-repo:tagname
注意: "new-repo" 将包含 "Docker ID + Repo 名称"
在执行以下命令之前,我已经在 Docker Hub 中创建了 "ubuntu" 仓库。
示例:
docker tag alok/ubuntu:latest aloktiwari2007/ubuntu:latest
docker push aloktiwari2007/ubuntu:latest
简单的解决方案:
访问 https://hub.docker.com/
创建一个私有仓库,例如 johnsmith/private-repository
,这是在构建镜像时要使用的NAME/REPOSITORY
。
首先,执行docker login
其次,我使用"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
完成!
在使用Docker登录之后,您需要用前缀为您的镜像命名。
例如,如果您在Docker Hub上的用户名是Shah
,则镜像应该是:
Shah/firstimage
docker login
docker tag imageName username/imageName
docker push username/imageName
只有这个对我有效!
有一个Docker文件,要求构建镜像并立即将其推送到Docker Hub
登录Docker Hub
sudo docker login -u 您的用户名
输入密码
构建镜像
sudo docker build -t 您的用户名/demorepo:1.0
以上, 没有提及镜像名称,因为您的用户名/demorepo是Docker Hub中的存储库。标记的名称是1.0
推送镜像
sudo docker push 您的用户名/demorepo:1.0
将已存在的镜像推送到Docker Hub
登录Docker Hub
sudo docker login -u 您的用户名
输入密码
标记您的镜像(假设您的镜像名为test_docker:1.0)
sudo docker tag test_docker:1.0 您的用户名/demorepo:firstpush
以上,firstpush是赋予您的镜像test_docker 1.0标签的名称。
重要提示:(在标记时,未提及镜像名称)
现在在docker images中您将有两个镜像,一个是test_docker 1.0,另一个是您的用户名/demorepo firstpush
推送镜像
sudo docker push 您的用户名/demorepo:firstpush
这在我的Windows 10上奏效了
登录Docker
我遇到了同样的问题。在我的情况下,我登录了index.docker.io并将镜像推送到docker.io/用户名/镜像名:标签。
解决方案是通过运行以下命令登录docker.io:
export CI_REGISTRY=docker.io
docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
docker push USERNAME/IMAGE:TAG
输出结果如下:
The push refers to repository [docker.io/USERNAME/IMAGE:TAG]
eeb7e16c6369: Preparing
6bd09f46d0ae: Preparing
f5a7f7a3fb28: Preparing
07952c1df7f6: Preparing
a4522c0d203b: Preparing
3e207b409db3: Preparing
3e207b409db3: Waiting
a4522c0d203b: Layer already exists
3e207b409db3: Layer already exists
f5a7f7a3fb28: Pushed
6bd09f46d0ae: Pushed
07952c1df7f6: Pushed
eeb7e16c6369: Pushed
latest: digest: sha256:7ce256fa83ef1eebcaaaa460c4d73f87f2adf304bc6e6c1b83a19d987cd61ad5
size: 1579
Running after_script
00:02
Saving cache
00:01
Uploading artifacts for successful job
00:02
Job succeeded
致意。
denied: requested access to the resource is denied
docker image ls
docker container prune
docker image prune -a
许多答案都谈到了登录。当然需要登录,如果登录后错误仍未解决,请查找推送引用存储库。 在我的情况下,它试图推送到
[docker.io/library/<myimage>]
在我使用<account_name>/<repo_name>:<tag>
标记存储库之后,它正常工作了。
docker tag mynginx_image:latest <myaccount>/mynginx:latest
docker push <myaccount>/mynginx:latest
然后它变成了
推送是指仓库[docker.io/<myaccount>/mynginx]
sudo
- Sisir