2.1.4、初识Docker Hub
2015-09-04 21:50
627 查看
初识Docker Hub
目前为止,你已经学习了如何利用命令行在本地运行Docker。你还学习了如何拉取镜像用于从现成的镜像中构建容器,并且还学习了如何创建自己的镜像。接下来,你将会学到如何利用Docker
Hub来简化和加强你的Docker工作流程。
Docker Hub是一个由Docker公司负责维护的公共注册中心,它包含了超过15,000个可供你下载和构建容器的镜像。它还提供认证、工作组结构、类似webhooks的工作流工具、构建触发器以及私有工具(比如私有仓库可用于存储你并不想公开分享的镜像)。
Docker命令和Docker Hub
通过Docker内建的 docker search,
pull,
login,
和
push命令可以访问Docker
Hub服务,本页将向你演示这些命令是如何工作的 。
账号创建和登陆
一般,你需要先在docker hub上创建一个账户并(如果您尚未注册)。你可以直接在DockerHub创建你的账户,或通过运行下面的命令:
$ 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 byimage 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
任何人都可以从DockerHub注册中心下载公开的镜像,但是如果你想要分享你的镜像,那么,你就必须先注册。
推送一个仓库到Docker Hub
为了推送一个仓库到它的注册库中,你需要一个命名一个镜像或者将你的容器提到为一个命名的镜像,和这里看到的一样。现在,你可以将这个仓库推送到注册库(指定的名字或标签)。
$ docker push yourname/newimage
镜像上传之后,你的队友或者社区成员就可以使用它。
Docker Hub的特点
让我们再进一步看看Docker Hub的特点,这里你可以看到更多的信息。私有仓库
组织和团队
自动构建
Webhooks
私有仓库
有时候,你有一些镜像不想公开或者跟任何分享。所以Docker Hub允许你有私有仓库,你可以在这里注册一个。
组织和团队
私人仓库一个较有用的地方,你可以将仓库分享给你团队或者你的组织。Docker Hub支持创建组织,这样你可以和你的同事来管理你的私有仓库,在这里你可以学到如何创建和管理一个组织。
自动构建
自动构建功能会自动从GitHub 和Bitbucket直接将镜像构建或更新至DockerHub。通过为Github或Bitbucket的仓库添加一个提交的hook来实现,当你推送提交的时候就会触发构建和更新。
自动构建的设置
创建一个Docker Hub账号并登陆通过 “Link Accounts”菜单连接你的Github或Bitbucket账户
配置一个自动化构建
选择一个你想要构建且包含一个
Dockerfile文件的项目,在Github或Bitbucket里。
选择一个你想构建的分支(默认是
master分支)
给自动化构建起一个名字
分配一个可选的Docker标签去构建
指定
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信息,请移步到这里。
来源: <https://docs.docker.com/userguide/dockerrepos/>
相关文章推荐
- Docker认识基础
- CentOS6.5 2.6.32-431 安装Docker1.8.1
- Docker它是个啥?
- 深入理解 Docker 镜像 json 文件
- 深入分析Docker镜像原理
- Docker新手入门:基本用法
- Docker新手入门:基本用法
- Docker1.8.1安装
- Docker-容器互联访问之数据容器操作过程
- 如何用Docker安装Eclipse Che和Codenvy
- 使用Docker部署Scrapy爬虫
- docker容器网络模式配置场景
- 2.1.1、Dockerfile最佳实战
- docker toolbox在windows下如何为docker命令配置环境变量
- docker+tomcat+java配置(ubuntu)
- Docker RestApi Create mysql Container
- docker资料汇总
- 如何在 Windows 上通过 Kitematic 使用 Docker
- Docker ON MAC OS X -- 第三篇 - 查找并运行 whalesay镜像
- Docker ON MAC OS X -- 第二篇-了解镜像及容器