docker容器在python脚本执行后立即退出

docker容器在python脚本执行后立即退出,python,docker,Python,Docker,docker容器在python脚本执行后立即退出: docker run-t-i-v/root/test.py:/test.py (test.py启动zookeeper服务) 该命令已成功执行,但立即退出,但没有启动容器。我无法使用“docker start container id”启动容器 在容器内手动运行“python test.py”是成功的,但在“docker run…”期间不成功。仅启动服务器是不够的。当CMD退出时,容器也会退出。因此,如果启动一个作为守护进程的服务,则需要保持进程

docker容器在python脚本执行后立即退出:

docker run-t-i-v/root/test.py:/test.py (test.py启动zookeeper服务)

该命令已成功执行,但立即退出,但没有启动容器。我无法使用“docker start container id”启动容器


在容器内手动运行“python test.py”是成功的,但在“docker run…”期间不成功。

仅启动服务器是不够的。当CMD退出时,容器也会退出。因此,如果启动一个作为守护进程的服务,则需要保持进程的活动状态。例如,这可以通过跟踪服务日志文件来实现。supervisord是另一种运行进程并保持CMD活动的方法

例如,您可以这样做

CMD /test.py && tail -F /var/log/zookeeper.log
从命令行运行可以执行类似的操作

docker run -t -i -v /root/test.py:/test.py zookeeper bash -c "python test.py && tail -F /var/log/zookeeper.log"

很好,它起作用了。我知道它正在执行和退出,但不知道如何处理这种情况。谢谢。答案旁边应该有一个复选标记。你可以点击它。