在docker堆栈的顶部运行

在docker堆栈的顶部运行,docker,system,production-environment,Docker,System,Production Environment,是我在所有服务器上安装的工具,用于在调试站点事件时检查计算机上发生的情况。有没有一种很好的“docker”方式可以在你的车队中运行,还是我应该在docker下面的操作系统中运行 与此相关的是我喜欢调试问题的所有其他工具:strace,iotop,htop,tcpdump,perf,等等。人们在生产中做了什么来覆盖这一领域。您可以通过使用--pid=host运行容器来实现这一点(请参阅 在某些情况下,您希望容器共享主机的进程名称空间,基本上允许容器内的进程查看系统上的所有进程。例如,您可以使用调试

是我在所有服务器上安装的工具,用于在调试站点事件时检查计算机上发生的情况。有没有一种很好的“docker”方式可以在你的车队中运行,还是我应该在docker下面的操作系统中运行


与此相关的是我喜欢调试问题的所有其他工具:
strace
iotop
htop
tcpdump
perf
,等等。人们在生产中做了什么来覆盖这一领域。

您可以通过使用
--pid=host
运行容器来实现这一点(请参阅

在某些情况下,您希望容器共享主机的进程名称空间,基本上允许容器内的进程查看系统上的所有进程。例如,您可以使用调试工具(如
strace
gdb
)构建容器,但希望在调试主机内的进程时使用这些工具容器

一个Docker维护人员创建的运行htop的Docker文件示例可以在这里找到;(以及该存储库中更多的伟大示例)。该映像的自动构建可以在Docker Hub上找到

像这样运行它

docker run --rm -it --pid host jess/htop

我想人们不想一直这样做,只是为了启动一个特殊用途的调试容器?