gpt4 book ai didi

docker - 如何调试在Docker容器中运行的多个进程?

转载 作者:行者123 更新时间:2023-12-02 21:27:00 35 4
gpt4 key购买 nike

我在Docker容器中运行一个多进程应用程序实例,每个进程都作为一个简单的守护程序运行。目前,我无法调试容器中出现的任何运行时错误,因为docker attach经常挂起(并生成交错的打印语句),而且tmuxscreen在容器中似乎都无法正常运行。此外,将每个单独进程的标准输出重定向到日志文件,如下所示:

python myfile.py 1>> mylogfile 2>&1 &

根本行不通,因为我只在日志文件中看到警告。理想的解决方案是使 tmux工作。如何调试容器中的进程?

最佳答案

不要在一个容器中运行多个进程

由于所有原因,您概述了。

使用监督

在Docker的早期,“不要运行多个进程!”这不是一个大规则。 Supervisord是类似initd的推荐工具,可在一个容器中处理多种服务。它可以尝试监视两者,并且可以正确处理日志记录。

使用docker exec进行调试
docker exec [-it] <container> <command>使您可以在正在运行的容器上运行额外的命令。使用它来获取 shell 并进行探索。

关于docker - 如何调试在Docker容器中运行的多个进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36345718/

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