深入理解docker信号机制以及dumb(2)

查看状态:

root@k8s-master:/tmp# docker run --name sem_test --rm -it -v /tmp/a.out:/a.out -v /tmp/dumb-init:/dumb-init ubuntu:latest /dumb-init /a.out process [8] started... received sign: [term] , the sender is [1] root@k8s-master:/tmp#

a.out成功收到来自1号进程(dumb-init)发送的信号SIGTERM,这下它可以从容的回收自己的资源了

六、小结

● docker引擎会向容器中1号进程发送信号,如果你的1号进程具备处理子进程各种状态的能力,那完全可以直接启动(比如nginx会处理它的worker进程);否则就需要使用像dumb-init之类的来充当1号进程
● 关于容器中僵尸进程的测试(像bash、sleep之类的普通进程能否接管孤儿进程),本文并没有进行测试

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/11816.html