Python 使用Docker Engine SDK和Docke
2018-12-31 本文已影响1人
运维开发_西瓜甜
安装模块
$ pip3 install docker
运行一个容器
import docker
client = docker.from_env()
r = client.containers.run("alpine", ["echo", "hello", "world"])
print(str(r, encoding='utf-8'))
在后台运行容器
import docker
client = docker.from_env()
container = client.containers.run("busybox", detach=True)
print(container.id)
停止所有正在运行的容
import docker
client = docker.from_env()
for container in client.containers.list():
container.stop()
打印特定容器的日志
您还可以对单个容器执行操作。此示例打印给定其ID的容器的日志。您需要在运行代码之前修改代码以更改容器的硬编码ID以打印日志。
import docker
client = docker.from_env()
container = client.containers.get('f1064a8a4c82')
print(container.logs())
列出所有镜像
import docker
client = docker.from_env()
for image in client.images.list():
print(image.id)
拉取镜像
import docker
client = docker.from_env()
image = client.images.pull("alpine")
print(image.id)
提交容器
import docker
client = docker.from_env()
container = client.containers.run("alpine", ["touch", "/helloworld"], detach=True)
container.wait()
image = container.commit("helloworld")
print(image.id)