永久重启 Node.js
我有一个用于部署 Node.js 应用程序的 Capistrano 配方
task :start, :roles => :app do
run "cd #{current_path} && NODE_ENV=#{node_env} forever start socket-server.js"
end
task :stop, :roles => :app do
run "cd #{current_path} && NODE_ENV=#{node_env} forever stop socket-server.js"
end
task :restart, :roles => :app do
run "cd #{current_path} && NODE_ENV=#{node_env} forever restart socket-server.js"
end
问题是“重新启动”任务,应该检查服务器是否已经在运行。
因为永远重新启动未运行的服务器槽是行不通的,所以我需要在它未运行时先运行它。但我该如何检查呢?
I have a Capistrano recipe for deploying a Node.js application
task :start, :roles => :app do
run "cd #{current_path} && NODE_ENV=#{node_env} forever start socket-server.js"
end
task :stop, :roles => :app do
run "cd #{current_path} && NODE_ENV=#{node_env} forever stop socket-server.js"
end
task :restart, :roles => :app do
run "cd #{current_path} && NODE_ENV=#{node_env} forever restart socket-server.js"
end
The problem is the "restart" task, there should be a check if the server is already running.
Because restarting a not running server trough forever doesn't work, I need to run it first when it is not running. But how I can do the check ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
让您的重新启动任务调用停止和启动任务。
Make your restart task call the stop and start tasks.