安装docker-python和docker rest api

1.docker软件自带docker rest api,不用安装;

需要设置下docker配置文件

vi /etc/default/docker.io 
或者
vi /etc/default/docker #追加下面一行
DOCKER_OPTS="-H tcp://0.0.0.0:5555 -H  unix://var/run/docker.sock"

重启下docker,  service  docker  restart即可。
用法:

#1.查看所有镜像
#curl ‘http://127.0.0.1:5555/images/json?all=0‘| python -m json.tool 
#2.查看运行的容器
#curl http://127.0.0.1:5555/containers/json
#curl http://127.0.0.1:5555/containers/json |python -m json.tool
#3.查看某个容器具体信息
#curl -XGET ‘http://127.0.0.1:4243/containers/df7b7568fa7a/json‘ | python -m json.tool
#4.关闭、开启容器
#curl -s -XPOST "http://127.0.0.1:5555/containers/d0274fdba510/stop"
#curl -s -XPOST "http://127.0.0.1:5555/containers/d0274fdba510/start"

2.安装docker-python

#apt-get install python-pip
#pip install docker-py

用法:

[email protected]:~# ipython
Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
Type "copyright", "credits" or "license" for more information.

IPython 1.2.1 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython‘s features.
%quickref -> Quick reference.
help      -> Python‘s own help system.
object?   -> Details about ‘object‘, use ‘object??‘ for extra details.
#倒入docker模块
In [1]: import docker

In [2]: docker.
docker.Client      docker.client      docker.ssladapter  docker.unixconn    docker.version
docker.auth        docker.errors      docker.tls         docker.utils       

#设置链接
In [2]: d = docker.Client(base_url=‘unix://var/run/docker.sock‘,version=‘1.9‘,timeout=10)

#docker模块的用法
In [3]: d.
d.adapters                      d.headers                       d.proxies
d.attach                        d.history                       d.pull
d.attach_socket                 d.hooks                         d.push
d.auth                          d.images                        d.put
d.base_url                      d.import_image                  d.remove_container
d.build                         d.info                          d.remove_image
d.cert                          d.insert                        d.request
d.close                         d.inspect_container             d.resize
d.commit                        d.inspect_image                 d.resolve_redirects
d.containers                    d.kill                          d.restart
d.cookies                       d.load_image                    d.search
d.copy                          d.login                         d.send
d.create_container              d.logs                          d.start
d.create_container_from_config  d.max_redirects                 d.stop
d.delete                        d.mount                         d.stream
d.diff                          d.options                       d.tag
d.events                        d.params                        d.top
d.export                        d.patch                         d.trust_env
d.get                           d.ping                          d.verify
d.get_adapter                   d.port                          d.version
d.get_image                     d.post                          d.wait
d.head                          d.prepare_request               

#查看所有镜像
In [3]: d.images()   
Out[3]: 
[{u‘Created‘: 1409856139,
  u‘Id‘: u‘68eb857ffb513a3809e94c26925abdff3783dc13e2a96b01d8e74688ab8e48f7‘,
  u‘ParentId‘: u‘34e94e67e63a0f079d9336b3c2a52e814d138e5b3f1f614a0cfe273814ed7c0a‘,
  u‘RepoTags‘: [u‘centos:centos6‘],
  u‘Size‘: 212675513,
  u‘VirtualSize‘: 212675513},
 {u‘Created‘: 1409686431,
  u‘Id‘: u‘e5322c5256de057b73ca9d2552ecfceaed350dd6f0465d0716cad9f75f9cb374‘,
  u‘ParentId‘: u‘aad454798945a2d2fa67af9b99a4ef4667aa4d4eb5701ba7bc5233c381c47fed‘,
  u‘RepoTags‘: [u‘ubuntu1004/apache2:latest‘],
  u‘Size‘: 0,
  u‘VirtualSize‘: 298356004}]
#搜索镜像
In [4]: d.search(‘ubuntu_sshd‘)
#下载镜像
In [5]: d.pull(‘ubuntu_sshd‘)
#启动容器
In [6]: d.start(‘apache‘) 
In [7]: d.start(container="e5322c5256de057b73ca9d2552ecfceaed350dd6f0465d0716cad9f75f9cb374")
#关闭容器
In [8]: d.stop(‘apache‘) 
#查看容器日志
In [7]: d.logs(container="e5322c5256de057b73ca9d2552ecfceaed350dd6f0465d0716cad9f75f9cb374")

#关闭容器后,通过inspect再次查看容器状态
In [8]: d.stop(‘55bd7d4ecd0b‘)
In [9]: re_info = d.inspect_container(‘55bd7d4ecd0b‘)
In [10]: re_info[‘State‘][‘Running‘]
Out[10]: False
时间: 2024-08-25 17:21:13

安装docker-python和docker rest api的相关文章

python调用docker API(CentOS6.5)

一 环境背景 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

在已经安装好spark的docker镜像里安装cassandra2.0.7

1. 通过docker run命令的-v/–volume参数将主机文件拷贝到docker容器 [[email protected] ~]# docker run -v /data:/mnt -i -t -P -h sandbox sequenceiq/spark:1.2.0 /etc/bootstrap.sh -bash / Starting sshd: [ OK ] Starting namenodes on [sandbox] sandbox: starting namenode, logg

Ubuntu-Docker[1]安装Docker,通过Docker部署net core代码,需要结合[.NET Core 18]发布、ASP.NET Core Docker部署

1)通过系统自带包安装 通过自带包安装,可能Docker版本较旧 $ sudo apt-get update Reading package lists... Done $ sudo apt-get install -y docker.io {{{-y表示同意.没有-y也可执行,系统会问是否安装,输入y回车即可 apt-get -y install这个指令则是跳过系统提示,直接安装.}}} Adding group `docker' (GID 121) ... Done. docker star

Python Moniotr Docker

请参考本人监控篇: Python Monitor Docker

RHEL7.3系统上安装docker环境及docker的简单使用

为RHEL7和Centos7上安装epel源和docker源以及安装和检查 命令安装 yum -y install epel-release 手动安装 wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm rpm -vih epel-release-7-2.noarch.rpm 或者 rpm -vih http://dl.fedoraproject.org/pub/epel/7/x86_6

centos 安装最新稳定版本docker

直接yum安装的docker版本是 : docker --versionDocker version 1.12.6, build 85d7426/1.12.6 一些新特性需要安装最新的稳定版本 国内可以用镜像加速,可以参考我的另外一篇blog http://www.cnblogs.com/zhishuai/p/8013137.html 以下流程主要整理自docker中国官方站,简单梳理下流程 https://docs.docker-cn.com/engine/installation/linux

docker 系列之 docker安装

Docker支持以下的CentOS版本 CentOS 7 (64-bit) CentOS 6.5 (64-bit) 或更高的版本 前提条件 目前,CentOS 仅发行版本中的内核支持 Docker. Docker 运行在 CentOS 7 上,要求系统为64位.系统内核版本为 3.10 以上. Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位.系统内核版本为 2.6.32-431 或者更高版本 1.查看当前系统内核版本 [[email protect

安装docker报错docker: relocation error:

完整报错docker: relocation error: docker: symbol dm_task_get_info_with_deferred_remove, version Base not defined in file libdevmapper.so.1.02 with link time reference 处理结果:更新device-mapper-libs之后重新安装docker可以正常安装 原文地址:http://blog.51cto.com/xiaoshanzi/21353

docker安装步骤及基于docker容器部署web应用LNMP服务器环境

docker的介绍 docker的定义: 1.docker的三个概念:Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器Docker 镜像 - Docker images: Docker 镜像是 Docker 容器运行时的只读模板Docker 仓库 - Docker registeries: Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库(Docker Hub)Docker 容器 - Docker containers:每一个 Docke

vmware14中安装centos7并使用docker

1.vmare中centos7安装(同一路由器无线网络下) 1.1选择桥接模式 1.2修改配置文件 vi /etc/sysconfig/network-scripts/ifcfg-ens33(这里不一定是ifcfg-ens33) 按下i键,进入编辑模式,进行如下编辑 TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static #设置为静态IP,不自动分配 DEFROUTE=yes IPV4_FAILURE_FATAL=no I