保存和分发镜像的最直接方法就是使用 Docker Hub。https://hub.docker.com/

Docker Hub 是 Docker 公司维护的公共 Registry。用户可以将自己的镜像保存到 Docker Hub 免费的 repository 中。如果不希望别人访问自己的镜像,也可以购买私有 repository。

除了 Docker Hub,quay.io 是另一个公共 Registry,提供与 Docker Hub 类似的服务。

下面介绍如何用 Docker Hub 存取我们的镜像。

首先得在 Docker Hub 上注册一个账号。

在 Docker Host 上登录。

 root@ubuntu:~# docker login -u gsophy
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded
root@ubuntu:~#

输入密码后登录成功。

修改镜像的 repository 使之与 Docker Hub 账号匹配。

Docker Hub 为了区分不同用户的同名镜像,镜像的 registry 中要包含用户名,完整格式为:[username]/xxx:tag. 可以通过 docker tag 命令重命名镜像。

 root@ubuntu:~# docker tag httpd:latest gsophy/docker.edu:v1
root@ubuntu:~# docker images gsophy/docker.edu:v1
REPOSITORY TAG IMAGE ID CREATED SIZE
gsophy/docker.edu v1 ef1dc54703e2 days ago 132MB
root@ubuntu:~#

注:Docker 官方自己维护的镜像没有用户名,比如 httpd。

通过 docker push 将镜像上传到 Docker Hub。

root@ubuntu:~# docker push gsophy/docker.edu:v1
The push refers to repository [docker.io/gsophy/docker.edu]
64446057e402: Layer already exists
13a694db88ed: Layer already exists
3fc0ec65884c: Layer already exists
30d0b099e805: Layer already exists
7b4e562e58dc: Layer already exists
v1: digest: sha256:246fed9aa9be7aaba1e04d9146be7a3776c9a40b5cfb3242d3427f79edee37db size: 1367

Docker
会上传镜像的每一层。Docker Hub
上已经有了全部的镜像层,所以真正上传的数据很少。同样的,如果我们的镜像是基于 base 镜像的,也只有新增加的镜像层会被上传。如果想上传同一
repository 中所有镜像,省略 tag 部分就可以了,例如:
docker push cloudman6/httpd

登录 https://hub.docker.com,在Public Repository 中就可以看到上传的镜像。

如果要删除上传的镜像,只能在 Docker Hub 界面上操作。

这个镜像可被其他 Docker host 下载使用了。

 root@ubuntu:~# docker pull gsophy/docker.edu:v1
v1: Pulling from gsophy/docker.edu
177e7ef0df69: Pull complete
65e7b631411e: Pull complete
3249ef8b9272: Pull complete
43ed8fedd0f6: Pull complete
02d3f33bda9d: Pull complete
Digest: sha256:56ae0d287fc1bbb470a9773d1451d470c281850bf7ab4001d5b1335a94c033ed
Status: Downloaded newer image for gsophy/docker.edu:v1

---------------------引用来自-----------------------

https://mp.weixin.qq.com/s?__biz=MzIwMTM5MjUwMg==&mid=2653587623&idx=1&sn=1ad6234a72bb3d4840adf7d211e1888b&chksm=8d3080beba4709a8753bbba67c49928380cefd3eae4efdc78309b21e9c3220753a12d072dd37&scene=21#wechat_redirect

第 3 章 镜像 - 019 - 使用公共 Registry的更多相关文章

  1. 第 3 章 镜像 - 020 - 搭建本地 Registry

    Docker Hub 虽然非常方便,但还是有些限制,比如: 需要 internet 连接,而且下载和上传速度慢. 上传到 Docker Hub 的镜像任何人都能够访问,虽然可以用私有 reposito ...

  2. 019、使用公共Registry (2019-01-10 周四)

    参考https://www.cnblogs.com/CloudMan6/p/6896488.html   在DockerHub上注册一个账号,这样就可以将自己构建的镜像上传到DockerHub上供别人 ...

  3. 使用公共 Registry - 每天5分钟玩转 Docker 容器技术(19)

    保存和分发镜像的最直接方法就是使用 Docker Hub. Docker Hub 是 Docker 公司维护的公共 Registry.用户可以将自己的镜像保存到 Docker Hub 免费的 repo ...

  4. 17-使用公共 Registry

    Docker Hub 是 Docker 公司维护的公共 Registry.用户可以将自己的镜像保存到 Docker Hub 免费的 repository 中.如果不希望别人访问自己的镜像,也可以购买私 ...

  5. 第 3 章 镜像 - 021 - Docker 镜像小结

    镜像小结 镜像的常用操作子命令: images    显示镜像列表 history   显示镜像构建历史 commit    从容器创建新镜像 build     从 Dockerfile 构建镜像 ...

  6. 阿里云Docker镜像仓库(Docker Registry)

    镜像仓库申请地址: https://cr.console.aliyun.com/cn-shanghai/instances/repositories   一.创建命名空间 例如daniel-hub   ...

  7. Docker:搭建私有镜像仓储(image registry)(4)

    搭建私有仓储,其实本质上也是运行了一个官方提供的(Registry)镜像的容器:生产环境中,我们要搭建自己的专有仓储 下载registry镜像 docker pull registry 运行镜像 do ...

  8. 第 3 章 镜像 - 017 - RUN vs CMD vs ENTRYPOINT

    RUN.CMD 和 ENTRYPOINT 这三个 Dockerfile 指令看上去很类似,很容易混淆. 简单的说: RUN 执行命令并创建新的镜像层,RUN 经常用于安装软件包. CMD 设置容器启动 ...

  9. 第 3 章 镜像 - 016 - Dockerfile 常用指令

    Dockerfile 常用指令 1.FROM 指定base镜像2.MAINTAINER 设置镜像的作者,可以为任意字符串3.COPY 从build context 复制到镜像 COPY 支持两种形式: ...

随机推荐

  1. tomcat报java.lang.VerifyError错误

    google结果: 针对“java.lang.VerifyError”的错误原因,主要是因为jar包的版本问题导致,可能是因为部署环境存在2套以上版本冲突的JDBC驱动程序部署在应用服务器不同的lib ...

  2. mybatis 3.2.*打印sql结果集

    虽然可以写个interceptor记录下,但是总归没有log4j来的自然.一段时间不查问题,总是要忘了,记录下: 在mybatis 3.2.*中,可以在log4j中如下配置: log4j.logger ...

  3. XXX银行项目部署

    XXX银行项目部署 一.下载项目代码 1.使用git工具下载代码 代码路径:推荐代码下载到桌面 git clone http://sunyard_姓名拼音@bitbucket.devops.hfdev ...

  4. (4运行例子)自己动手,编写神经网络程序,解决Mnist问题,并网络化部署

    ​1.联通ColaB 2.运行最基础mnist例子,并且打印图表结果  # https://pypi.python.org/pypi/pydot#!apt-get -qq install -y gra ...

  5. 使用注释来解决关于inline-block元素换行问题

    昨天群里有人问个问题:为什么button加了文字后,产生了对齐不一致的问题. 原因在于baseline的对齐问题. 然后就有人推荐了一篇文章:关于Vertical-Align你需要知道的事情 其中里面 ...

  6. linux下如何调试Makefile?

    答:make --debug=all (输出所有的调试信息)

  7. linux内核中宏likely和unlikely到底做了些什么?

    1. 先看看它们长啥样吧!(它们有两种定义,第一种是使能了程序trace功能的宏定义,第二种是普通的宏定义,咱们分析普通宏定义吧) # define likely(x) __builtin_expec ...

  8. 【索引失效】什么情况下会引起MySQL索引失效

    索引并不是时时都会生效的,比如以下几种情况,将导致索引失效: 1.如果条件中有or,即使其中有条件带索引也不会使用(这也是为什么尽量少用or的原因) 注意:要想使用or,又想让索引生效,只能将or条件 ...

  9. 论文笔记:Attention Is All You Need

    Attention Is All You Need 2018-04-17 10:35:25  Paper:http://papers.nips.cc/paper/7181-attention-is-a ...

  10. Even Odds (java)

    从1到n的奇数,从1到n之间的偶数,排列在一起,找到第k个数 Input 输入包含 n and k (1 ≤ k ≤ n ≤ 1012). Please, do not use the %lld sp ...