守护进程以“docker run daemon”开头不起作用

时间:2015-04-08 11:45:07

标签: bash docker vowpalwabbit

docker run -itp 26542:26542  stack/vowpall vw -t -i /home/alex/cb.model --daemon --port 26542

当我运行此命令时,没有守护进程监听。我跑的时候

docker ps 

没有进程 但是当我去docker container bash并运行

vw -t -i /home/alex/cb.model --daemon --port 26542 

有一个守护进程监听,也可以在docker ps中看到。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

问题是该守护进程正在向后台分叉,而Docker容器只在其主进程中运行。当守护进程分叉到后台时,主进程结束,容器结束。您只需要让应用程序在前台运行,这可能只是意味着删除--daemon参数。

另外,如果你想要一个shell,你只需要-it个参数,所以你也可以删除它们。如果您想在运行docker命令后返回主机上的shell,请添加-d以便客户端在启动容器后断开连接,例如:

docker run -d p 26542:26542  stack/vowpall vw -t -i /home/alex/cb.model --port 26542