【问题标题】:How can I pull a Docker image from a private Docker Hub repo remotely?如何远程从私有 Docker Hub 存储库中提取 Docker 映像?
【发布时间】:2016-06-29 09:28:01
【问题描述】:

我在 Docker Hub 私有存储库中有几个图像,我需要使用 Docker 远程 Rest API 在远程机器上拉取这些图像。有没有远程验证的方法?

这些是我想远程拨打的电话:

docker login
docker pull myrepo/myimage

【问题讨论】:

    标签: docker dockerhub


    【解决方案1】:

    有办法,只需要指定远程主机

    docker login myrepo.com
    

    然后你就可以访问你的图片了

    docker pull myrepo.com/myimage
    

    你也可以指定一个标签

    docker pull myrepo.com/myimage:mytag
    

    希望这对你有用。

    【讨论】:

    • 我希望能够使用远程 api 来做到这一点,我认为这是不可能的
    • 然后你可以做类似this
    • 如果你愿意,你可以输入密码登录: docker login --username --password
    • 仅供参考,docker login 会将您的用户名/密码以 base64 纯文本格式写入~/.docker/config.json。所以你可能想在之后做docker logout来清除它。
    • @HereHere 看起来 Docker for Mac 自动设置了 docker 凭证助手。但是 by default (e.g. Linux), docker will write the credentials in base64 plaintext~/.docker/config.json 除非您配置凭证助手。因此,在您验证您的机器之前,您不应该假设。
    【解决方案2】:

    只有当我公开回购协议时,我才能解决同样的问题。确保存储库是公开的,那么这是我在命令行中遵循的一组指令: 从 docker hub 注销后再次登录。

    1-docker logout

    2-docker login --username=YOURUSERNAME 询问时输入密码

    3-docker pull "repositoryName"/"imageName"[:tag]

    如果不包含“标签”,则默认值为“最新”。 然后通过docker images命令查看图片是否被拉取。

    【讨论】:

      【解决方案3】:

      docker 镜像拉取 127.0.0.1:5000 /jenkins:latest

      上面的 ip 是你的私有机器的 ip,5000 是你的映射端口 /jenkins:latest 是你的镜像名称,它存在于你的私有注册表中, 你可以检查它@ localhost:5000/v2/_catalog

      【讨论】:

        猜你喜欢
        • 2021-01-05
        • 1970-01-01
        • 1970-01-01
        • 2020-04-27
        • 2015-09-03
        • 1970-01-01
        • 2023-03-07
        • 2014-09-08
        • 1970-01-01
        相关资源
        最近更新 更多