docker python api 安装配置的详解
dockerpythonapi安装配置的详解
1.docker宿主机配置文件修改
$vim/etc/default/docker#再已有OPTS中添加 DOCKER_OPTS="-Htcp://0.0.0.0:2375-Hunix://var/run/docker.sock" 使得可以通过tcp的2375端口连接到docker守护进程中,第二个-H及之后的内容可以省略
2.安装docker-py
$sudopipinstalldocker-py
3.编写api脚本
参考文档
http://docker-py.readthedocs.org/en/latest/
fromdockerimportClient d=Client(base_url='tcp://10.109.252.221:2375',version='auto',timeout=10) #注意填写url端口版本号和超时时间 defcontainerCreate(**command): container=d.create_containter(**command) printcontainer #这里使用非关键字可变长参数**command,可以将需要使用的参数以字典形式传输,并且函数会自动识别字典内的参数 containerCreate(**{'name':'test1','command':'/bin/bash','image':'ubuntu'}) #这里注意要使用**双星号传实参,不然会出错。
4.端口绑定、磁盘挂载和link操作
defcontainerCreate(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')) printcontainer 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中,第一个是容器端口,后一个是主机端口,正好与dokcerrun-p相反 #link操作需要传递字典或元组,我自己使用元组没有成功,用字典即可。
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!