如何将图像推送到dockerhub中的非公开回购
如何推送到dockerhub上的非公共存储库 假设账户名为“myaccount”,而(非公开)回购协议名为“myrepo”。在repo页面中,它显示“Pull this repository:docker Pull myaccount/myrepo” 例如,假设我有一个名为“myrepo/myimage”的图像。我已登录我的帐户(如何将图像推送到dockerhub中的非公开回购,docker,push,dockerhub,Docker,Push,Dockerhub,如何推送到dockerhub上的非公共存储库 假设账户名为“myaccount”,而(非公开)回购协议名为“myrepo”。在repo页面中,它显示“Pull this repository:docker Pull myaccount/myrepo” 例如,假设我有一个名为“myrepo/myimage”的图像。我已登录我的帐户(sudo docker login),并尝试 sudo docker push docker.io/myrepo/myimage sudo docker push my
sudo docker login
),并尝试
sudo docker push docker.io/myrepo/myimage
sudo docker push myrepo/myimage
sudo docker push myaccout:myrepo/myimage
sudo docker push myaccount/myrepo:myrepo/myimage
sudo docker push myaccount/myrepo:myimage
等等
这些都不管用。我会收到诸如“无效存储库名称”之类的错误,或者它成功了,但会说,“您真的想推送到公共注册表吗?”-我不想-我想推送到我的非公共dockerhub repo(“myaccount/myrepo”)。请首先使用
myaccount/myrepo:
本地标记您的图像docker标记myaccount/myrepo:
然后重试docker推送myaccount/myrepo:
注意为v1、v2等提供有效名称。感谢您的建议。我现在看到标签不仅仅是针对版本的。我的两个图像不是不同的版本-它们是完全独立的图像。所以我不会用“v1”和“v2”,而是用“SomeImage”和“SomeOtherImage”。没关系,我只是没有意识到标签应该这样使用。但是我试过了,我登录了,按下按钮后,我得到了错误消息,“FATA[0006]存储库不存在:docker.io//。请注意,我的repo不是公共的,但它确实存在-我现在正在查看它。为什么docker.io在错误消息中出现在
/
前面。您确实在本地标记为/:
,对吗?我使用的是Centos,结果证明Red Hat有自己版本的docker,并且它需要一个docker.io“在前面。我需要做的是sudo docker标记docker.io//:然后sudo docker推docker.io//:。在这种情况下,您可能需要将Red Hat提供的docker二进制文件替换为正式docker二进制文件: