有一个原因,我想杀死docker容器中的主要python进程(PID 1).但是没有像SIGTERM,SIGKILL那样的终止信号.我的意思是,运行kill -SIGKILL 1没有效果.
如何从容器内部杀死pid 1?我不想运行docker stop或类似的解决方案.
最佳答案
根据Docker问题跟踪器以及pid 1s的一般文档说明,您需要专门为信号
添加处理程序并从中杀死进程.
signal.signal(signal.SIGINT,exit_gracefully)
signal.signal(signal.SIGTERM,exit_gracefully)
exit_gracefully需要定义并最终调用sys.exit(0).
内核需要并强制执行此行为,因为它不会在其他pid上调用sigaction default(即终止).
我们需要在Node.js中做类似的事情.
原文链接:https://www.f2er.com/docker/436613.html