一 环境背景
  • python-2.7.8
  • docker 版本 1.15 (*yum安装为1.14版本,需升级为1.15,详见后续步骤)
二 获取Docker容器指标【指标可行性分析见笔记:】
  • CPU :usr 和 system Cpu time
  • Memory
  • IP
三 整体步骤
  • 容器指标值获取
  • Docker Python API 环境搭建
  • 获取指标可行性分析
四  具体实现
 
1    以下python脚本为获取指定容器ID的ip,cpu,及memory 【*框图部分需引入python docker API】
     
     
     
 
2 :python docke api 安装
          
     未安装api时,运行python,会报错:no model named docker
     
     安装步骤如下:
     
     A: 下载setuptools         
               
  • yum install zlib
  • yum install zlib-devel
  • 安 装完成后,重新编译 python2.7【不需要删除,只需要重新编译,make,安装就行了】 # cd /usr/local/Python-2.7.8   # make clean  # make  # make install
      B 安装pip          
     C 安装docker-py
  • #pip install docker-py
    
     报错:

     解决如下:yum安装openssl和openssl-devel。然后重新编译python。
     # yum install openssl
     # yum install-devel
     D  升级Docker版本(1.14)至1.15
  • 杀死docker正在运行的进程 #killall docker
  • #获取最新更新的 docker版本 #wget http://get.docker.io/builds/Linux/x86_64/docker-latest -O docker 或者:wget https://get.docker.com/builds/Linux/x86_64/docker-latest -O docker
  • 给docker执行权限   chmod +x docker
    
  • 使用-d模式开启和断开docker进程,后台运行进程使用参数(&).保证你使用./docker的版本是最新版本的路径而不是上一个版本的路径 # 执行新的版本 #./docker -d &
      或者你可以替换在/usr/local/bin的下的docker[为了保险起见将原有的docker更名为dockertemp存储,而未删除]

  • 最后重启docker:# service docker restart
  • docker version[成功升级为1.15] 如图:
    

     ps:如不升级docker会遇到以下错误:


E   运行python脚本
     # python testCpu.py

参考资料:

python调用docker API(CentOS6.5)的更多相关文章

  1. 使用Python调用Flickr API抓取图片数据

    Flickr是雅虎旗下的图片分享网站,上面有全世界网友分享的大量精彩图片,被认为是专业的图片网站.其API也很友好,可以实现多种功能.这里我使用了Python调用其API获得了大量的照片数据.需要注意 ...

  2. 基于python调用libvirt API

    基于python调用libvirt API 1.程序代码 #!/usr/bin/python import libvirt import sys def createConnection(): con ...

  3. 关于python调用zabbix api接口

    因公司业务需要,引进了自动化运维,所用到的监控平台为zbbix3.2,最近正在学习python,计划使用python调用zabbix api接口去做些事情,如生成报表,我想最基本的是要取得zabbix ...

  4. Python调用win32 API绘制正弦波

    Python调用win32 API新建窗口与直接创建窗口的流程相同 流程:注册窗口→创建窗口→显示窗口→更新窗口→消息循环 代码: # -*- coding: utf-8 -*- import win ...

  5. Java 使用 UnixSocket 调用 Docker API

    在 Docker 官网查阅 API 调用方式 例如:查询正在运行的容器列表,HTTP 方式如下: $ curl --unix-socket /var/run/docker.sock http:/v1. ...

  6. 【Python】 docker-py 用Python调用Docker接口

    [docker-py] 官方文档:[https://docker-py.readthedocs.io/en/stable/images.html] 众所周知,Docker向外界提供了一个API来管理其 ...

  7. python 调用zabbix api接口实现主机的增删改查

    python程序调用zabbix系统的api接口实现对zabbix_server端主机的增删改查,使用相关功能时候,需要打开脚本中的相关函数. 函数说明: zabbixtools()  调用zabbi ...

  8. 『Python』Python 调用 ZoomEye API 批量获取目标网站IP

    #### 20160712 更新 原API的访问方式是以 HTTP 的方式访问的,根据官网最新文档,现在已经修改成 HTTPS 方式,测试可以正常使用API了. 0x 00 前言 ZoomEye 的 ...

  9. Python调用ansible API系列(四)动态生成hosts文件

    方法一:通过最原始的操作文件的方式 #!/usr/bin/env python # -*- coding: utf-8 -*- """ 通过操作文件形式动态生成ansib ...

随机推荐

  1. Gitlab+Jenkins学习之路(七)之发布PHP项目

    使用git+jenkins实现持续集成 Step1:构建一个自由风格的php-deploy Step2:Gernal配置,丢弃旧的构建,防止jenkins构建较多之后变臃肿 Step3:源码管理:这里 ...

  2. rabbitmq的安装和使用

    一.RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件).RabbitMQ服务器是用Erlang语言编写的,而群集和故障转移是构建在开放电信平台框架上的.所有 ...

  3. 微服务介绍及Asp.net Core实战项目系列

    0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 二.目录 0.微服务介绍 1.RESTful API 规范介绍 2.asp.net core介绍及swagger使用 3.asp. ...

  4. UWP 自然灾害App在刷新数据后卡死的解决方案

    一直以为都在纳闷,为啥我的其他app崩溃次数几乎为0,而单单这个App的崩溃次数简直逆天了,我都不敢相信. 每天都有至少上千次crash...我也是服的 不甘心,趁着这次重构的机会,把代码好好捋了1下 ...

  5. Spring是什么?优点是什么?

    大部分项目都少不了Spring的身影,为什么大家对他如此青睐,而且对他的追捧丝毫没有减退之势呢 Spring是什么: Spring是一个轻量级的DI和AOP容器框架. 说它轻量级有一大部分原因是相对与 ...

  6. 第一次玩github,第一个开源小项目——xxoo

    引言 由于最近的工作写代码比较少,这让LZ产生了一丝危机感.于是便想找一个办法可以没事自己写写代码,自然而然就想到了github.接下来便是一阵捣鼓的过程,其实整个过程很快,主要过程就是注册一个账号, ...

  7. hdu2795 Billboard(线段树单点修改)

    传送门 结点中的l和r表示层数,maxx表示这层最多还剩下多少宽度.根据公告的宽度取找到可以放的那一层 找到后返回层数,并修改maxx #include<bits/stdc++.h> us ...

  8. 人脸识别-关于face_recognition库的安装

    首先十分感谢博客https://blog.csdn.net/scc_722/article/details/80613933,经历过很多尝试(快要醉了),终于看了这篇博客后安装成功. face_rec ...

  9. ats编译中增加透明度 选项

    在大多数情况下,如果环境支持透明度,则configure将自动启用它.对于其他环境,可能需要 配置configure 选项. --enable-posix-cap 这实现了POSIX功能,这是透明度所 ...

  10. iOS开发日常遇到问题记录

    1. [self.navigationController.navigationBar setTranslucent:NO]; iOS 7 之后,setTranslucent=yes 默认的   则状 ...