如何杀死容器内的进程?Docker最高命令
我有一个来自docker网站官方指南的简单示例。
我运行以下命令:
sudo docker run -d ubuntu:latest /bin/sh -c "while true; do echo hello world; sleep 1; done"a66asdasdhqie123...
然后从创建的容器中获取一些输出:
sudo docker logs a66hello
hello
hello
...
然后,我查找容器的运行过程:
sudo docker top a66UID PID PPID C STIME TTY TIME CMD
root 25055 15152 0 20:07 ? 00:00:00 /bin/sh -c while true; do echo hello world; sleep 1; done
root 25295 25055 0 20:10 ? 00:00:00 sleep 1
接下来,我尝试杀死容器的第一个过程:
sudo docker exec a66 kill -9 25055
但是,在我做完之后,没有任何改变。进程仍然有效,并且每秒输出“ hello”。我怎么了
回答:
重现您的情况时,我会看到docker top <container>
和之间的PID不同docker exec -it <container> ps
-aux。当您执行docker
exec命令时,将在容器内执行=>应使用容器的pid。否则,在这种情况下,您可以在没有docker的情况下直接从主机执行杀死操作sudo kill -9
25055。
以上是 如何杀死容器内的进程?Docker最高命令 的全部内容, 来源链接: utcz.com/qa/435135.html