gpt4 book ai didi

python - 在 Docker 容器中运行 Disco

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:55:28 24 4
gpt4 key购买 nike

我需要在 Docker 容器中运行一个 Python 脚本(我目前执行“disco_test.py”作为我的 ENTRYPOINT 命令),它将利用 Disco(当然需要在该容器中运行)。问题是我似乎无法让 Disco 在 Dockerfile 中使用 CMDRUN 运行,或者从 Python 脚本本身(使用 subprocess 模块)运行。

但是,如果我创建了一个没有 ENTRYPOINT 命令的完全相同的图像,请使用 docker run -i -t disco_test/bin/bash 运行它,然后打开一个Python shell,我可以使用子进程模块成功运行 Disco(只需使用 call(["disco", "start"]) 即可)。退出 Python shell 后,我确实可以验证 Disco 仍在正常运行(disco status 报告“Master 0cfddb8fb0e4:8989 running”)。当我尝试以相同的方式(使用 call(["disco", "start"]))从“disco_test.py”中启动 Disco 时,我将其作为 ENTRYPOINT< 执行 命令,它不起作用!它将打印“Master 0cfddb8fb0e4:8989 started”,但是之后检查 disco status 总是显示“Master 0cfddb8fb0e4:8989 stopped”。

ENTRYPOINT 命令的运行方式是否有什么问题阻止我从相应的 Python 脚本中运行 Disco?在我的机器上(而不是在 Docker 容器中)运行“disco_test.py”确实能让 Disco 启动并成功运行。

如有任何见解或建议,我们将不胜感激!

最佳答案

我猜它正在运行并立即退出并停止容器。您可以试试这些容器 dockerized disco .它使用 supervisor 来运行 disco。

关于python - 在 Docker 容器中运行 Disco,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26538383/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com