gpt4 book ai didi

docker python api 安装配置的详解

转载 作者:qq735679552 更新时间:2022-09-28 22:32:09 28 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章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 。

最后此篇关于docker python api 安装配置的详解的文章就讲到这里了,如果你想了解更多关于docker python api 安装配置的详解的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com