Docker SDK 中的 exec() 方法允许您在正在运行的容器中执行命令。要查询容器的日志信息,可以使用 exec() 方法执行 'docker logs' 命令。

以下是一个示例代码:

import docker

client = docker.from_env()

container = client.containers.get('my-container')

logs = container.exec_run(['docker', 'logs', 'my-container'])

print(logs.output.decode())

在上面的代码中,我们首先使用 docker.from_env() 方法创建了一个 Docker 客户端对象。然后,我们使用 client.containers.get() 方法获取了名为 'my-container' 的容器对象。接下来,我们使用 exec_run() 方法执行了 'docker logs' 命令,并将结果存储在 logs 变量中。最后,我们使用 decode() 方法将结果转换为字符串,并将其打印出来。

请注意,在上面的代码中,我们将 'docker logs' 命令作为参数传递给 exec_run() 方法。这是因为 exec_run() 方法需要一个命令列表作为参数,而不是一个字符串。因此,我们将命令拆分成一个列表,然后将其传递给 exec_run() 方法。

使用 Docker SDK 的 exec() 方法查询容器日志

原文地址: https://www.cveoy.top/t/topic/kNua 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录