2010-11-07 113 views
0

我在本地運行wesabe Web應用程序。 每次我通過打開單獨的shell啓動mysql服務器,java後端和rails前端來啓動它。如何使用多個獨立進程自動啓動Web應用程序?

我的問題是,你怎麼能與一個shell腳本或耙任務自動化此?

我想剛剛上市的shell腳本命令順序(見下文),但後來的命令永遠不會運行,因爲每個應用程序服務器創建自己的過程中,從來沒有「回報」(直到退出服務器)。

我看着成子殼和並行耙的任務,但是這就是我卡住了。

echo 'starting mysql' 
mysqld_safe 
echo 'starting pfc' 
cd ~/wesabe/pfc 
rails server -p 3001 
echo 'starting brcm' 
cd ~/wesabe/brcm-accounts-api 
script/server 
echo 'ok, go!' 
open http://localhost:3001 

回答

1

如果你不介意的輸出被弄亂,把「&」在您啓動應用程序,使其在後臺運行行的末尾。

+0

謝謝,那種作品。現在的問題是瀏覽器在服務器完成引導之前啓動。有沒有辦法做出某種回調,也許通過刷新成功消息的輸出? – meleyal 2010-11-07 17:52:33

+0

您可以在下一個命令前幾秒鐘等待幾秒鐘,並在它們之間插入一條類似「睡眠15」的線(15秒)。 – 2010-11-07 18:09:09

+1

用'&'在後臺啓動進程非常普遍,然後或者像@Paulo說的那樣休眠,或者像打開瀏覽器一樣打開瀏覽器。在服務器準備好之前打開的瀏覽器不應該傷害任何東西,儘管它可能會給你一些關於未建立連接的視覺噪聲。瀏覽器刷新應該很好地解決這個問題。如果你必須有一個乾淨的瀏覽器負載,你可以輕鬆地編寫一個小應用程序來循環從目標URL中獲取的一些內容,直到獲得乾淨的響應,然後退出,這樣腳本可以繼續並啓動瀏覽器。 – 2010-11-07 19:27:14

相關問題