1

VM を ssh して手動で「rails サーバー」を実行することなく、「vagrant up」で Rails アプリを実行したいと考えています。

そのために、default.rb レシピに次のように記述します。

execute "rails server" do
  command "cd /vagrant && rails server"
end

これにより、端末が実行され続け、実際にレールサーバーが実行されます。

問題は、「vagrant up」でも「grunt watch」をさらに実行したいときに発生します。

execute "grunt watch" do
  command "cd /vagrant && grunt watch"
end

問題は、「rails server」が前に実行され、バックグラウンドで実行されないため、「grunt watch」が実行されないことです。

したがって、バックグラウンドで実行するために両方のコマンドに「&」を追加しましたが、「vagrant up」を正常に実行した後、grunt ウォッチの Rails サーバーは実行されていません。

「nohup」コマンドを事前に追加しようとしましたが、どちらも機能しませんでした。

ここにガイドはありますか?

4

1 に答える 1