Skip to main content

用于 Docker 引擎 API 的 Python 库。

项目描述

适用于 Python 的 Docker SDK

构建状态

用于 Docker 引擎 API 的 Python 库。它允许您执行docker命令所做的任何事情,但可以在 Python 应用程序中执行——运行容器、管理容器、管理 Swarm 等。

安装

PyPI 上提供了最新的稳定版本。添加docker到您的requirements.txt文件或使用 pip 安装:

pip install docker

需要安装旧版本 (< 6.0) 才能docker[tls]支持 SSL/TLS。这不再是必需的并且是无操作的,但支持向后兼容。

用法

使用默认套接字或环境中的配置连接到 Docker:

import docker
client = docker.from_env()

您可以运行容器:

>>> client.containers.run("ubuntu:latest", "echo hello world")
'hello world\n'

您可以在后台运行容器:

>>> client.containers.run("bfirsh/reticulate-splines", detach=True)
<Container '45e6d2de7c54'>

您可以管理容器:

>>> client.containers.list()
[<Container '45e6d2de7c54'>, <Container 'db18e4f20eaa'>, ...]

>>> container = client.containers.get('45e6d2de7c54')

>>> container.attrs['Config']['Image']
"bfirsh/reticulate-splines"

>>> container.logs()
"Reticulating spline 1...\n"

>>> container.stop()

您可以流式传输日志:

>>> for line in container.logs(stream=True):
...   print(line.strip())
Reticulating spline 2...
Reticulating spline 3...
...

您可以管理图像:

>>> client.images.pull('nginx')
<Image 'nginx'>

>>> client.images.list()
[<Image 'ubuntu'>, <Image 'nginx'>, ...]

阅读完整文档以查看您可以做的所有事情。