【发布时间】:2016-06-29 09:28:01
【问题描述】:
我在 Docker Hub 私有存储库中有几个图像,我需要使用 Docker 远程 Rest API 在远程机器上拉取这些图像。有没有远程验证的方法?
这些是我想远程拨打的电话:
docker login
docker pull myrepo/myimage
【问题讨论】:
我在 Docker Hub 私有存储库中有几个图像,我需要使用 Docker 远程 Rest API 在远程机器上拉取这些图像。有没有远程验证的方法?
这些是我想远程拨打的电话:
docker login
docker pull myrepo/myimage
【问题讨论】:
有办法,只需要指定远程主机
docker login myrepo.com
然后你就可以访问你的图片了
docker pull myrepo.com/myimage
你也可以指定一个标签
docker pull myrepo.com/myimage:mytag
希望这对你有用。
【讨论】:
docker login 会将您的用户名/密码以 base64 纯文本格式写入~/.docker/config.json。所以你可能想在之后做docker logout来清除它。
Docker for Mac 自动设置了 docker 凭证助手。但是 by default (e.g. Linux), docker will write the credentials in base64 plaintext 到 ~/.docker/config.json 除非您配置凭证助手。因此,在您验证您的机器之前,您不应该假设。
只有当我公开回购协议时,我才能解决同样的问题。确保存储库是公开的,那么这是我在命令行中遵循的一组指令: 从 docker hub 注销后再次登录。
1-docker logout
2-docker login --username=YOURUSERNAME
询问时输入密码
3-docker pull "repositoryName"/"imageName"[:tag]
如果不包含“标签”,则默认值为“最新”。
然后通过docker images命令查看图片是否被拉取。
【讨论】:
docker 镜像拉取 127.0.0.1:5000 /jenkins:latest
上面的 ip 是你的私有机器的 ip,5000 是你的映射端口 /jenkins:latest 是你的镜像名称,它存在于你的私有注册表中, 你可以检查它@ localhost:5000/v2/_catalog
【讨论】: