Docker入门教程(七)Docker API
Docker入门教程(七)Docker API
纵观我们的Docker系列教程,我们已经讨论了很多重要的Docker组件与命令。在本文中,我们将继续深入学习Docker:剖析Docker APIs。
Docker提供了很多的API以便用户使用。这些API包含四个方面:
- Docker Registry API
- Docker Hub API
- Docker OAuth API
- Docker Remote API
具体到这篇文章,我们将讨论Docker Registry API以及Docker Hub API。
Docker Registry API
Docker Registry API是Docker Registry的REST API,它简化了镜像和仓库的存储。该API不能访问用户帐户或者获得授权。你可以阅读Docker系列教程的第四章,以了解更多有关Registry的类型(译者注:Docker中有几种不同的Registry)。
Extract image layer:
取出镜像层:GET /v1/images/(image_id)/layer

Insert image layer:
插入镜像层:PUT /v1/images/(image_id)/layer
Retrieve an image:
检索镜像:GET /v1/images/(image_id)/json
Retrieve roots of an image:
检索根镜像:GET /v1/images/(image_id)/ancestry
Obtain all tags or specific tag of a repository:
获取库里所有的标签或者指定标签:GET /v1/repositories/(namespace)/(repository)/tags
或者GET /v1/repositories/(namespace)/(repository)/tags/(tag*)

Delete a tag:
删除标签:DELETE /v1/repositories/(namespace)/(repository)/tags/(tag*)

Status check of registry:
registry状态检查:GET /v1/_ping

Docker Hub API
Docker Hub API是Docker Hub的一个简单的REST API。再提醒一下,请参考Docker系列教程的第四篇文章了解Docker Hub。Docker Hub 通过管理校验(checksums)以及公共命名空间(public namespaces)来控制着用户帐户和授权。该API还支持有关用户仓库和library仓库的操作。
首先,让我们来看看特殊的library仓库(需要管理员权限)的命令:
1. 创建一个新的仓库。使用以下命令可以创建新的library仓库:PUT /v1/repositories/(repo_name)/
其中,repo_name是新的仓库名称。
2. 删除已经存在的仓库。命令如下:DELETE /v1/repositories/(repo_name)/
其中,repo_name是要删除的仓库名称。
3. 更新仓库镜像。命令如下:PUT /v1/repositories/(repo_name)/images
4. 从仓库中获取镜像。命令如下:GET /v1/repositories/(repo_name)/images
5. 授权。使用Token获取仓库授权,如下:PUT /v1/repositories/(repo_name)/auth
接下来,让我们来看看用户仓库的命令。library仓库与用户仓库命令之间的主要区别是命名空间的使用。
1.创建用户仓库。命令如下:PUT /v1/repositories/(namespace)/(repo_name)/

2.删除用户仓库,命令如下:DELETE /v1/repositories/(namespace)/(repo_name)/

3.更新用户仓库镜像,命令如下:PUT /v1/repositories/(namespace)/(repo_name)/images

4.从仓库中下载镜像。如下:GET /v1/repositories/(namespace)/(repo_name)/images

5.验证用户登录,如下:GET /v1/users

6.添加新用户,命令如下:POST /v1/users
7.更新用户信息,如下:PUT /v1/users/(username)/
现在,我们已经走过了Docker API之旅的第一站,第二站是有关Docker OAuth以及Remote API的内容,我们将在Docker系列教程的下一篇见。
原文链接:Ultimate Guide for Docker APIs(翻译:田浩浩 审校:李颖杰)
Docker入门教程(七)Docker API的更多相关文章
- Docker(三):Docker入门教程-CentOS Docker 安装
CentOS Docker 安装 Docker支持以下的CentOS版本: CentOS 7 (64-bit) CentOS 6.5 (64-bit) 或更高的版本 前提条件 目前,CentOS 仅发 ...
- 超实用的Docker入门教程|Docker vs VM
概述 如今Docker的使用已经非常普遍,特别在一线互联网公司.使用Docker技术可以帮助企业快速水平扩展服务,从而到达弹性部署业务的能力.在云服务概念兴起之后,Docker的使用场景和范围进一步发 ...
- Docker入门教程(九)10个镜像相关的API
Docker入门教程(九)10个镜像相关的API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第九篇,重点介绍了镜像相关的Docker Remote ...
- Docker入门教程(八)Docker Remote API
Docker入门教程(八)Docker Remote API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第八篇,重点介绍了Docker Remote ...
- Docker入门教程(五)Docker安全
Docker入门教程(五)Docker安全 [编者的话]DockOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第五篇,介绍了Docker的安全问题,依然是老话重谈,入门者可以通 ...
- Docker入门教程(四)Docker Registry
Docker入门教程(四)Docker Registry [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第四篇,介绍了Docker Registry,它 ...
- Docker(一):Docker入门教程
如今Docker的使用已经非常普遍,特别在一线互联网公司.使用Docker技术可以帮助企业快速水平扩展服务,从而到达弹性部署业务的能力.在云服务概念兴起之后,Docker的使用场景和范围进一步发展,如 ...
- Docker(一):Docker入门教程
如今Docker的使用已经非常普遍,特别在一线互联网公司.使用Docker技术可以帮助企业快速水平扩展服务,从而到达弹性部署业务的能力.在云服务概念兴起之后,Docker的使用场景和范围进一步发展,如 ...
- [转帖]Docker 入门教程
Docker 入门教程 http://www.ruanyifeng.com/blog/2018/02/docker-tutorial.html 自己学的还是太肤浅啊.. 作者: 阮一峰 日期: 201 ...
随机推荐
- 使用rest方式修改服务端xml文件
想法: 最近想用REST的方式去修改一个远端的xml文件,于是自己写了个Handler 设计: 用现成的XPath,和GET,POST,PUT,DELETE这4个http方法作为动作,达到直接读写xm ...
- [C#解惑] #1 在构造函数内调用虚方法
谜题 在C#中,用virtual关键字修饰的方法(属性.事件)称为虚方法(属性.事件),表示该方法可以由派生类重写(override).虚方法是.NET中的重要概念,可以说在某种程度上,虚方法使得多态 ...
- HBase初探
string hbaseCluster = "https://charju.azurehdinsight.net"; string hadoopUsername = "账 ...
- 安装.NET Framework后程序无法启动的错误处理
最近发现一直在使用的Database.NET软件无法正常使用了,表现为当尝试进行Sql Server的连接创建时,直接报错 在事件查看器具体错误信息为: 日志名称: Applicat ...
- Android帧动画
通过播放一张一张图片来实现一段动画 首先配置anim.xml: <?xml version="1.0" encoding="utf-8"?> < ...
- Ubuntu's Trash
1.Location Where is Trash? /home/userName/.local/share/Trash2.Under Trash Three files: ...
- 如何设置unobtrusive的语言包
场景:网站是用的validate.unotrusive.js验证的,网站的语言已经切换到繁体了,但是提示语言还是英文. 环境:asp.net mvc4,jquery.validate.unotrusi ...
- springMvc发布restFull风格的URL
package zpark.controller; import org.springframework.stereotype.Controller; import org.springframewo ...
- hibernate的Criteria条件查询
项目中用到了criteria的查询方式,觉得挺好用的,下班后找了一下资料,一边测试,一边在博客上面记录下来 1.初解 快速浏览了资料,大致了解了以下的内容: 1. Hibernate 定义了Crite ...
- 转 浅谈算法和数据结构: 十 平衡查找树之B树
前面讲解了平衡查找树中的2-3树以及其实现红黑树.2-3树种,一个节点最多有2个key,而红黑树则使用染色的方式来标识这两个key. 维基百科对B树的定义为"在计算机科学中,B树(B-tre ...