Ubuntu中启动Spring Boot容器后,如何返回root且不终止容器?
解决方案
一、先查看启动日志再脱离控制台(满足补充需求)
当容器在前台运行并输出Spring Boot启动日志后,直接使用Docker内置的快捷键组合:
- 按下
Ctrl+P,松开后立即按下Ctrl+Q
执行后会直接回到宿主机的root终端,容器将在后台持续运行。可以通过docker ps命令验证容器状态,此时容器会显示为Up状态。
二、启动容器后返回root终端且不终止容器的其他方式
如果需要提前确保容器可以安全脱离,启动时可以添加-it参数(开启交互模式并分配伪终端),命令修改为:
docker run -it --add-host host.docker.internal:host-gateway -p 8088:8080 app:latest
启动后同样可以用Ctrl+P Ctrl+Q组合键脱离终端,容器保持运行。
补充说明
默认前台启动容器时,终端的信号(比如Ctrl+C的SIGINT)会直接传递给容器内的PID 1进程(也就是你的Spring Boot Java进程),导致进程退出、容器终止。而Ctrl+P Ctrl+Q是Docker专门设计的脱离会话快捷键,不会发送终止信号给容器内进程,因此能保证容器持续运行。
内容的提问来源于stack exchange,提问作者pappu_kutty
相关产品推荐
相关产品推荐

