Docker通过子进程运行

标签 docker subprocess

好的,我正在通过子进程调用(在 GUI 中)触发一些 docker run 命令。调用如下所示:

import subprocess
a = subprocess.run(args, stdout=subprocess.PIPE)
output = a.stdout.decode().split("\n")

位于 docker 容器中的进程会记录到标准输出,我想我可以获取我的日志消息。我正在使用 docker run -a 命令,如

/usr/bin/docker run --rm  -a stdout xxxx/pyrisk:latest python prices.py

最佳答案

我建议使用 docker.py 库,而不是通过子进程直接调用 docker 命令。 在这里查看更多:https://github.com/docker/docker-py

您的案例如下所示:

import docker
client = docker.from_env()
stdout = client.containers.run(image="xxxx/pyrisk:latest",command="python prices.py", remove=True)

关于Docker通过子进程运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47453734/

相关文章:

Docker:在 dockerfile 中启动 tmux session ?

reactjs - 使用 npm init react-app 时 Docker 容器启动后立即退出

windows - 适用于 Windows CE 的 Docker : Kubernetes: Unable to connect to the server eof

python - 使用单引号运行子进程命令

hadoop - 用 yarn 进行星火聚类

python - 在继续之前如何/最好的方式等待 Mongod 实例启动

python - 遍历不终止的批处理脚本

python - 具有实时输入和多个控制台的Python子进程

Python 子进程调用不起作用

mongodb - 如何在容器重启之间持久化 MongoDB 数据?