Docker 入门教程(七)

原创 2016年06月01日 14:18:08

Docker API

DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第七篇,重点介绍了Docker Registry API和Docker Hub 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
get-image-layer.jpg


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*)
docker-get-all-tags.png

Delete a tag:

删除标签:
DELETE /v1/repositories/(namespace)/(repository)/tags/(tag*)
delete-a-tag.jpg

Status check of registry:

registry状态检查:
GET /v1/_ping
registry-ping.png

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)/
create-user.png

2.删除用户仓库,命令如下:
DELETE /v1/repositories/(namespace)/(repo_name)/
docker-delete-a-repo.png

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

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

5.验证用户登录,如下:
GET /v1/users
docker-user-login.png

6.添加新用户,命令如下:
POST /v1/users
7.更新用户信息,如下:
PUT /v1/users/(username)/

现在,我们已经走过了Docker API之旅的第一站,第二站是有关Docker OAuth以及Remote API的内容,我们将在Docker系列教程的下一篇见。

相关文章推荐

通过Ruby on Rails和docker构建微服务架构之入门教程

如何通过Ruby on Rails和docker构建微服务架构之入门教程

Day 21:Docker 入门教程

几个月以前,红帽(Red Hat)宣布了在 Docker 技术上和 dotCloud 建立合作关系。在那时候,我并没有时间去学习关于 Docker 的知识,所以在今天,趁着这个 30 天的挑战,...

Docker入门教程(一)——基本介绍

1、Docker概念Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,...
  • eff666
  • eff666
  • 2017年03月09日 18:46
  • 191

docker入门教程

什么是Docker? 简介:Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs...

Docker入门教程(一)介绍

 【编者的话】DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第一篇,介绍了Docker的基础概念以及Docker的安装。 Docker是一个新的容器化的...

Day 21:Docker 入门教程

几个月以前,红帽(Red Hat)宣布了在 Docker 技术上和 dotCloud 建立合作关系。在那时候,我并没有时间去学习关于 Docker 的知识,所以在今天,趁着这个 30 天的挑战,我...
  • dc_726
  • dc_726
  • 2014年04月03日 10:05
  • 2705

Docker教程(一) Docker入门教程

Docker,直译是码头工人。这个码头工人搬运的是集装箱(Container)。 Docker通过Linux Container技术将任意类型的应用进行包装,变成一种标准化的,可移植的,自管理的组件。...
  • yuan_xw
  • yuan_xw
  • 2016年07月17日 23:05
  • 4037

OPENCV入门教程七:颜色空间转换

一、目标学习把RGB(红绿蓝)空间的图像转化为其它空间的图像。 将RGB转化为HSV(色调(H),饱和度(S),明度(V)) 将RGB转化为Lab(颜色模型 (Lab) 基于人对颜色的感觉,L表示...

twisted入门教程之七:小插曲,Deferred

第七部分:小插曲,Deferred 你可以从这里从头开始阅读这个系列 回调函数的后序发展 在第六部分我们认识这样一个情况:回调是Twisted异步编程中的基础。除了与reactor交互外,...

Picasso入门教程(七) 根据图片的优先级按顺序请求

优先级:高优先级、中优先级、低优先级你可能正在想一个符合这个的情景,但是如果你想需要按照优先级来加载图片,你可以使用priority() 这个方法。这需要使用三个常量:HIGH ,MEDIUM ,LO...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Docker 入门教程(七)
举报原因:
原因补充:

(最多只允许输入30个字)