Docker:如何重新启动容器内的进程?
我有一套我想在docker集装箱上运行的testing。 在testing中间,我正在改变我的testing数据,我需要重新启动JETTY。
什么是最好的方法来做到这一点?
我可以想象一些select:
-
用SSH – 但是对于docker ssh不是最好的select。
-
docker上的Python代理侦听套接字 – 暴露一个端口,连接并重新启动jetty。
也许有更好的想法呢?
谢谢
听起来像你试图重新启动的过程是docker容器的主要过程(也就是你在Dockerfile中设置的那个,如果你有的话),当你在容器中运行'ps -ef'时,你会看到PID为你的进程设置为1)。 如果是这种情况,那么您不能从容器内重新启动它。 你应该重新启动容器本身:
docker restart <container_id>
input容器并重新启动它。
手动方式:
docker exec -it <containeridorname> /bin/bash
或自动化方式:
docker exec -it <containeridorname> /restartjettycommand.sh