2.1.4、初识Docker Hub

初识Docker Hub

目前为止,你已经学习了如何利用命令行在本地运行Docker。你还学习了如何拉取镜像用于从现成的镜像中构建容器,并且还学习了如何创建自己的镜像

接下来,你将会学到如何利用Docker Hub简化和加强你的Docker工作流程。

Docker Hub是一个由Docker公司负责维护的公共注册中心,它包含了超过15,000个可供你下载和构建容器的镜像。它还提供认证、工作组结构、类似webhooks的工作流工具、构建触发器以及私有工具(比如私有仓库可用于存储你并不想公开分享的镜像)。

Docker命令和Docker Hub

通过Docker内建的 docker search,pulllogin, 和push 命令可以访问Docker Hub服务,本页将向你演示这些命令是如何工作的 。

账号创建和登陆

一般,你需要先在docker hub上创建一个账户并(如果您尚未注册)。你可以直接在Docker Hub创建你的账户,或通过运行下面的命令:

$ docker login

这时将会提示你输入用户名,这个用户名将成为你的公共仓库的命名空间。如果你的名字合法的,Docker会提示你输入一个密码和邮箱地址。之后,它将会自动登录。你现在可以提交和推送镜像到你的仓库(挂载在Docker Hub上)。

注意:你的身份验证凭证会被保存到你的home目录下~/.docker/config.json 验证文件里。

搜索镜像

You can search the Docker Hub registry via its search interface or by using the command line interface. Searching can find images by image name, user name, or description:

你可以通过使用搜索接口或者通过使用命令行接口搜索 Docker Hub注册中心(某个镜像仓库) 。可以通过镜像名称、用户名或者描述来搜索镜像:

$ docker search centos
NAME           DESCRIPTION                                     STARS     OFFICIAL   TRUSTED
centos         Official CentOS 6 Image as of 12 April 2014     88
tianon/centos  CentOS 5 and 6, created using rinse instea...   21
...

这里你可以看到两个搜索的示例结果:centos tianon/centos。第二个结果表明它是来自名为 tianon/的用户仓储库,而第一个结果 centos没有指定具体的仓库,这就意味着它是来自可信的顶层仓库。 /字符将用户的仓库和镜像名字分开。

一旦你搜索到你想要的镜像时,便可以用 docker pull <imagename>:来下载它:

$ docker pull centos
Pulling repository centos
0b443ba03958: Download complete
539c0211cd76: Download complete
511136ea3c5a: Download complete
7064731afe90: Download complete

Status: Downloaded newer image for centos 

现在你有一个镜像,基于它你可以运行容器。

贡献到Docker Hub

任何人都可以从Docker Hub注册中心下载公开的镜像,但是如果你想要分享你的镜像,那么,你就必须先注册

推送一个仓库到Docker Hub

为了推送一个仓库到它的注册库中,你需要一个命名一个镜像或者将你的容器提到为一个命名的镜像,和这里看到的一样。

现在,你可以将这个仓库推送到注册库(指定的名字或标签)。

$ docker push yourname/newimage

镜像上传之后,你的队友或者社区成员就可以使用它。

Docker Hub的特点

让我们再进一步看看Docker Hub的特点,这里你可以看到更多的信息。

  • 私有仓库
  • 组织和团队
  • 自动构建
  • Webhooks

私有仓库

有时候,你有一些镜像不想公开或者跟任何分享。所以Docker Hub允许你有私有仓库,你可以在这里注册一个

组织和团队

私人仓库一个较有用的地方,你可以将仓库分享给你团队或者你的组织。Docker Hub支持创建组织,这样你可以和你的同事来管理你的私有仓库,在这里你可以学到如何创建和管理一个组织。

自动构建

自动构建功能会自动从GitHub Bitbucket直接将镜像构建或更新至Docker Hub。通过为Github或Bitbucket的仓库添加一个提交的hook来实现,当你推送提交的时候就会触发构建和更新。

自动构建的设置
  1. 创建一个Docker Hub账号并登陆
  2. 通过 “Link Accounts”菜单连接你的Github或Bitbucket账户
  3. 配置一个自动化构建
  4. 选择一个你想要构建且包含一个 Dockerfile 文件的项目,在Github或Bitbucket里。
  5. 选择一个你想构建的分支(默认是master 分支)
  6. 给自动化构建起一个名字
  7. 分配一个可选的Docker标签去构建
  8. 指定 Dockerfile 的地址。默认是/

一旦配置好自动构建,就会自动触发构建,只需几分钟,你就会Docker Hub注册中心看到你新的构建结果。它将会和你的Github或者BitBucket保持同步更新直到你解除自动构建。

如果你想检查你自动化构建的输出和状态, 在“Your Repositories”页面点击一个仓库名即可。自动构建在仓库的详细页面,你可以点击“Build Details”选卡去查看Docker Hub 的所有构建触发输出和状态。

如果你想看到你自动化构建的状态,你可以去你的Docker Hub自动化构建页面,它将会想你展示你构建的状态和构建历史。

一旦你创建了一个自动化构建,你可以禁用或删除它。但是,你不能通过docker push 推送一个自动化构建。你只能通过在Github或者BitBucket提交你的代码来管理它。

你可以在每个仓库中创建多个自动构建,配置它们指向指定的Dockerfile或Git 分支。

构建触发器

自动构建也可以通过Docker Hub的URL来触发。这允许你根据需求重建一个自动化构建镜像。

Webhooks

 Webhooks属于你的仓库的一部分,当一个镜像或镜像更新推送到你的仓库时,允许你触发一个事件。当你的镜像被推送的时候,webhook可以根据你指定的URL传递一个有效的Json信息。

获取更多关于Docker Hub 的webhooks信息,请移步到这里

 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值