服务器之家:专注于服务器技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - 服务器知识 - docker python api 安装配置的详解

docker python api 安装配置的详解

2021-02-04 16:44l6807718 服务器知识

这篇文章主要介绍了docker python api 安装配置的详解的相关资料,希望通过本文能帮助到大家,让大家理解掌握这部分内容,需要的朋友可以参考下

docker python api 安装配置的详解

1.docker宿主机配置文件修改

?
1
2
3
$vim /etc/default/docker #再已有OPTS中添加
DOCKER_OPTS="-H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock"
使得可以通过tcp的2375端口连接到docker守护进程中,第二个-H及之后的内容可以省略

2.安装docker-py

?
1
$sudo pip install docker-py

3.编写api脚本

参考文档

http://docker-py.readthedocs.org/en/latest/

?
1
2
3
4
5
6
7
8
9
from docker import Client
d=Client(base_url='tcp://10.109.252.221:2375',version='auto',timeout=10)
#注意填写url端口版本号和超时时间
def containerCreate(**command):
  container=d.create_containter(**command)
  print container
#这里使用非关键字可变长参数**command,可以将需要使用的参数以字典形式传输,并且函数会自动识别字典内的参数
containerCreate(**{'name': 'test1', 'command': '/bin/bash','image':'ubuntu'})
#这里注意要使用**双星号传实参,不然会出错。

4.端口绑定、磁盘挂载和link操作

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
def containerCreate(port, volume, link, **command): # 创建容器                            
    command['host_config']=d.create_host_config(port_bindings=port, binds=[volume],links=link)
  container = d.create_container(**command)
  d.start(container=container.get('Id'))
  print container
 
 
containerCreate(**{'name': 'test1','stdin_open':True,'tty':True, 'command': '/bin/bash', 'image': '10.109.252.221:5000/ubuntu',
        'ports':[8008],'port':{8008:9995},'volume':'/home/ubuntu/test:/test','link':{'mysql':'db'}})
#其中,ports必须声明,port和volume是我自己写的,用来传递参数
 
#ports声明容器开放的端口,port中,第一个是容器端口,后一个是主机端口,正好与dokcer run -p相反
 
#link操作需要传递字典或元组,我自己使用元组没有成功,用字典即可。

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:http://blog.csdn.net/l6807718/article/details/51242693

延伸 · 阅读

精彩推荐