Docker新手入门之八:Docker API详解

本文介绍了如何使用Docker Remote API进行管理,包括启动Remote API、测试API、管理镜像和容器,以及实现认证。特别强调了在Python中使用第三方库与Docker API交互,简化操作流程。
摘要由CSDN通过智能技术生成

转载过程中,图片丢失,代码显示错乱。

为了更好的学习内容,请访问原创版本:

https://www.missshi.cn/api/view/blog/5a63285f0a745f6335000008

Ps:初次访问由于js文件较大,请耐心等候(5s左右)

 

 

Docker本身提供了强大的API功能。
我们可以通过访问Docker API来对Docker服务进行管理。
在本章中,我们将会学习如何使用Docker API以及在Python中如何更加高效的使用Docker API。

Docker API

在Docker的生态系统中,存在下列三种API:

  1. Reistry API:与存储Docker镜像的Registry相关的功能。
  2. Docker Hub API:与Docker Hub相关的功能
  3. Docker Remote API:与Docker守护进程相关的功能。

其中,Docker Remote API是使用最为频繁的API类型,后续我们也将针对此类API展开讲解。

启动Remote API

Remote API主要用于远程访问Docker守护进程从而下达指令的。 
因此,我们在启动Docker守护进程时,需要添加-H参数并指定开启的访问端口。 
通常,我们可以通过编辑守护进程的配置文件来实现。 
不过对于不同操作系统而言,守护进程启动的配置文件也不尽相同:

  • Ubuntu系统:/etc/default/docker文件
  • Centos系统:/etc/sysconfig/docker文件

在该配置文件最后,添加内容如下:

 
  1. OPTIONS='-H=tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock'

修改完成后执行如下命令,重启Docker守护进程:

 
  1. systemctl stop docker
  2. systemctl start docker

此时,我们可以在其他机器上执行如下命令来测试一下:

 
  1. docker -H example.com:2375 info

title

测试Remote API

上面的试验中,我们已经确认了与Docker守护进程之间的连通性。 
下面,我们来使用一些Remote API。

 
  1. curl http://example.com:2375/info

从返回结果看,我们可以得到类似的docker info时的JSON格式的数据。

通过API管理Docker镜像

调用/images/json接口可以获取镜像列表:

 
  1. curl http://example.com:2375/images/json | python -mjson.tool

title 
Ps:通过python -mjson.tool可以将JSON数据格式化显示。

通过API管理Docker容器

调用/containers/json接口可以获取正在运行中的容器列表:

 
  1. curl http://example.com:2375/containers/json | python -mjson.tool

title 
如果想要查询全部的容器(包含不是正在运行的容器)时,可以调用如下接口:

 
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WangZhe0912

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值