用于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 。