在永久docker容器中开始节点的错误
我有一个问题,永远在docker集装箱开始节点,如果我手动启动工程,而不是相同的命令在Dockerfile中,当生成和启动容器,退出。 该命令在bash中工作:
docker run -it container_name bash forever start -c 'node --harmony' /my/path/app.js
我试图把命令放入Dockerfile,但容器不启动
CMD forever start -c 'node --harmony' /my/path/app.js
Google小组讨论
Forever start script.js
在后台运行。 forever
在前台运行, forever
尝试forever script.js
。
这从Docker所需要的前台开始。 记住,只要CMD中定义的stream程启动并运行,容器就是“活着的”。 由于永远以守护进程开始,命令本身退出,docker也将退出。
CMD forever -c 'node --harmony' /my/path/app.js
尝试使用数组语法:
CMD ["forever", "start", "-c", "node --harmony", "/my/path/app.js"]
放入您的Dockerfile中:
CMD forever app.js
不工作,我试着用2个命令:
CMD ["forever","start","-c","'node --harmony'","/my/path/app.js"]
和
CMD ["forever","start","-c","node --harmony","/my/path/app.js"]
如果进入容器并forever start -c 'node --harmony' /my/path/app.js
工作