我正在尝试使用 capistrano 部署 play2 应用程序,但我不知道在成功部署后如何(重新)启动 play2 应用程序。只需触发“播放开始”就会导致进程挂起,等待我按 ctrl+D
我在播放应用程序根文件夹中创建了一个启动脚本
#!/bin/bash
nohup bash -c "/var/lib/play2/play start &>> /tmp/myapp.log 2>&1" &> /dev/null &
当我在服务器上运行它时效果很好。当我尝试通过 ssh 从本地机器调用它时,它也可以工作。但是当我使用 capistrano 时,它似乎没有做任何事情。我的 capistrano 配置如下所示:
namespace :deploy do
task :restart do
stop
sleep 1
start
end
task :start do
run "cd #{current_release}/trip-api && ./start.sh"
end
task :stop do
run "cd #{current_release}/trip-api && ./stop.sh"
end
end
在远程机器上启动 play2 应用程序的最佳方式是什么?如何让它与 capistrano 一起工作?