容器生命周期
5种容器状态
初建状态Created — kubelet created
运行状态Up — kubelet running
停止状态Exited — kubelet exited
暂停状态Paused — kubelet running
删除状态Deleted
docker kill、docker stop、docker pause的区别
docker kill(暴力退出):向容器发送SIGKILL信号。
docker stop(优雅退出):向容器发送SIGTERM信号。如果容器没有在规定时间内停止,那么向容器发送SIGKILL信号。
docker pause(暂停):基于cgroup来暂停运行中的进程空间,向容器发送SIGTSTP信号。
running状态下的Nginx容器可以curl通。
paused状态下的Nginx容器无法curl通,也无法进入。
Nginx容器里面有master和worker这两个进程,均处于不可中断睡眠状态。
处于该状态后,健康检查会执行失败,导致容器复位。
手动pause进程
-20表示SIGTSTP信号,用于暂停进程。
-18表示SIGCONT信号,用于继续运行进程。
不同于暂停容器的D状态,接受SIGTSTP信号的进程会进入T停止状态。