现在Docker是地球上最炙手可热的项目之一,就意味着人民实际上不仅仅是因为这个才喜欢它。
话虽如此,我非常喜欢使用容器,服务发现以及所有被创造出的新趣的点子和领域来切换工作作为范例。
这个文章中我会简要介绍使用python中的docker-py模块来操作Docker 容器,这里会使用我喜爱的编程工具IPython。
安装docker-py
首先需要docker-py。注意这里的案例中我将会使用Ubuntu Trusty 14.04版本。
?
IPyhton
我真的很喜欢用IPython来探索Python。 它像是一共高级的python Shell,但是可以做的更多。
?
安装 docker
如果没有安装Docker,那首先安装docker
?
然后把 docker.io 起个别名 docker
?
Docker现在应该有个socket开启,我们可以用来连接。
?
Pull 镜像
让我们下载 busybox镜像
?
现在我们准备使用 docker-py 了。
使用 docker-py
现在我们有了docker-py , IPython, Docker 和 busybox 镜像,我们就能建立一些容器。
如果你不是很熟悉IPython,可以参照这个教程学习(http://ipython.org/ipython-doc/stable/interactive/tutorial.html),
IPython是十分强大的。
首先启动一个IPython ,导入docker模块。
?
然后我们建立一个连接到Docker
?
现在我们已经连接到Docker。
IPython使用tab键来补全的。 如果 输入 “c.” 然后按下tab键,IPython会显示Docker连接对象所有的方法和属性。
?
让我们来看下c.images 我输入一个 “?”在c.之后,ipython 会提供这个对象的详细信息。
?
获取busybox 镜像。
?
建立一个容器。 注意我添加一个可以将要运行的命令,这里用的是”env”命令。
?
使用ID来启动这个容器
?
我们可以检查日志,应该可以看到当容器创建的时候 ,我们配置的”env”命令的输出。
?
如果使用docker命令行,使用同样的命令行选项运行一个容器,应该可以看到类似的信息。
?
据我所知,docker-py没有运行选项,我们只能创建一个容器然后启动它。
以下是一个案例:
?
如果你还没有使用过busybox镜像,我建议你使用下。我也建议debain下的jessie镜像,它只有120MB,比Ubuntu镜像要小。
总结
Docker是一个吸引人的新系统,可以用来建立有趣的新技术应用,特别是云服务相关的。使用IPython我们探索了怎么使用
docker-py模块来创建docker 容器。 现在使用python,我们可以结合docker和容易 创造出很多新的点子。