2013-08-06 4 views
1

Я знаю, что этот вопрос задан очень много, но я не могу справиться с этим. Я уже смотрел на:Фоновая задача с Capistrano

Я использую Капистрано для развертывания сервера в Скале. Моя задача выглядит следующим образом:

desc "Start server" 
task :start do 
    run "cd #{deploy_to} && ./sbt compile start-script" 
    run "cd #{deploy_to} && export PORT=#{server_port} && export ENV=#{env} && nohup target/start > /dev/null 2>&1 &" 
end 

start-script является SBT плагин, который создает сценарий в мишень/запуска. При запуске задачи, выход:

* executing "cd /home/ubuntu/* && export PORT=* && export ENV=integration && nohup target/start > /dev/null 2>&1 &" 
    servers: ["54.217.224.197"] 
    [54.217.224.197] executing command 
    command finished in 1015ms 

но мой сервер не запускается ... Когда опуская «&» в конце команды, сервер запущен, но сценарий Capistrano заблокирован ,

* executing "cd /home/ubuntu/* && export PORT=* && export ENV=integration && nohup target/start > /dev/null 2>&1" 
    servers: ["54.217.224.197"] 
    [54.217.224.197] executing command 

Заранее благодарим за ответы.

ответ

2

Я нашел решение, просто добавьте псевдотерминал ложь в конце

run "cd #{deploy_to} && export PORT=#{server_port} && export ENV=#{env} && nohup target/start > /dev/null 2>&1 &" pty: false 

 Смежные вопросы

  • Нет связанных вопросов^_^