![如何将 exec $@ 进程引入前台](https://linux22.com/image/222335/%E5%A6%82%E4%BD%95%E5%B0%86%20exec%20%24%40%20%E8%BF%9B%E7%A8%8B%E5%BC%95%E5%85%A5%E5%89%8D%E5%8F%B0.png)
我想知道以exec $@
PID 1 启动的 docker 入口点进程如何将其置于前台
我尝试过exec $@ &
但它不起作用,
我的用例:我想在配置完成后终止该进程,但在exec $@
docker entrypoint.sh 中,由于进程进入后台,因此我的命令不会被执行。
请帮忙
问候, 萨姆
答案1
这PID 为 1 的进程受到保护并且简单地忽略了很多信号。所以可以不是被命令杀死kill
。
你能做的就是使用trap
命令来捕获这些信号:
trap "exit" SIGINT SIGTERM
经过更多研究后,我发现有一面--init
旗帜。
文档:https://docs.docker.com/engine/reference/run/#specify-an-init-process