docker-py用Python调用码头工人接口的方法

  

官方文档:【https://docker-py.readthedocs.io/en/stable/images.html】

  

众所周知,码头工人向外界提供了一个API来管理其中的资源。这个API可以是套接字文件形式的(一般也是默认的,在/var/运行/docker.sock中),也可以是TCP形式的。以前想要通过编程的方法来调用这些API还是傻傻的用子流程等和系统层面交互的模块来调用,而docker-py这个模块则是直接把DockerAPI的调用封装了进去,让我们可以更加贴合码头工人地进行API调用。

  

<>强安装还是用脉冲:

  

pip安装docker-py,意外的,这个模块所需要的依赖特别多,等了比我预想更长的时间,装好了。在python中进口码头工人,不报错就是装好了。

  

<强>■简单使用

  

网上的部分教程和使用方法说明可能是因为版本不切合的原因,不奏效。从中筛选了一些奏效的代码。首先是一个最简单的应用,就是实例化出一个dockerapi调用者的实例:

        进口码头工人      客户=docker.Client (base_url=' unix:///var/运行/docker.sock”)      组件版本在client.version () .iteritems ():      打印组件,版本   之前      

初始化实例的过程中用到了参数base_url,它可以指出一个套接字文件或者响应的dockerTCP连接如tcp://127.0.0.1:2375这样子。除此之外,还有版本参数可以指出码头工人的版本,超时参数指出连接超时的时间,tls参数可以置True或False来指出当前连接是否需要用SSL证到书,另外也可以传递一个docker.tls.TLSConfig类的实例来实现指定的tls配置。

  

得到的客户端实例客户可以调用一些方法。比如版本方法是将当前码头工人以及其所依赖的环境中各个组件的版本信息以一个字典的方式展现出来,上述在虚拟机中输出如下:

        KernelVersion 3.10.0-693.5.2.el7.x86_64   PkgVersion码头工人git3e8e77d.el7.centos.1.x86_64——1.12.6 - 71.   linux操作系统   BuildTime 2018 - 01 - 30 - t09:17:00.069703428 + 0   ApiVersion 1.24   版本1.12.6   GitCommit 3 e8e77d/1.12.6   拱amd64   GoVersion go1.8.3      

<强>其他的读取当前码头工人环境中的一些方法如:

  

client.images([名字])获取镜像信息,名字可以是一个镜像的名字,名字的一部分,名字:标签等多种形式,获取到完整的镜像信息。不指定名字时返回所有镜像信息

  

client.containers([名字])获取容器信息,名字可以是容器的名称、id等等,返回

  

client.info()码头工人信息命令的那些输出

  

client.start/停止(名字)相当于码头工人启动和停止制定容器

  

…   

<强>上述几个方法的输出都是标准的JSON格式,可以很方便地被嵌入到其他的一些系统中

  

client.login()可以传入实名参数用户名、密码、注册表等,相当于码头工人登录

  

这里还有很多方法可以说,正巧这回想正式用下ipython这个神器.yum安装ipython之后(还挺大的. .),键入ipython就进入ipython的壳了。在实例化玩客户端之后,输入端。然后按tab键要求补全的话,就会显示出所有客户实例可以调用的方法和属性。

  

对于一个方法比如client.delete,后面输入问号再按回车,就可以看到这个方法相关的一些说明和用法。比去网上查,看官方文档不知道高到哪里去了。

  

列个所有方法的表,偷懒不详写了

。   

 docker-py用Python调用码头工人接口的方法

  

以上这篇docker-py用Python调用码头工人接口的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

docker-py用Python调用码头工人接口的方法