用于Python的Docker SDK?

Docker Engine API的Python庫。它可以讓你做任何 docker 命令可以做的事情,但可以從Python應用程序內部-運行容器、管理容器、管理群集等。

有關引擎API的詳細信息,請參見 see its documentation 。

安裝?

最新的穩定版本 is available on PyPI 。要么添加 docker 致您的 requirements.txt 使用pip::文件或安裝

pip install docker

快速入門?

要與Docker守護進程對話,您首先需要實例化一個客戶端。您可以使用 from_env() 要使用環境中的默認套接字或配置進行連接,請執行以下操作:

import docker
client = docker.from_env()

現在您可以運行容器:

>>> client.containers.run("ubuntu", "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'>, ...]

這只是您對用于Python的Docker SDK所能做的事情的初步體驗。如需更多信息, take a look at the reference 。