問題##
希望把Rails server 注冊成windows server,開機自啟動
環(huán)境##
windows 10猫态,Rails 5.0.1 , puma
嘗試##
原來是做成bat了医增,每次使用的時候天通,需要使用時,手動雙擊打開黍衙,然后有一個窗口掛著珠十。然后看著窗口不舒服料扰,后來在啟動命令后加了一個做為守護進程的參數(shù),沒窗口了焙蹭,舒服了晒杈。命令如下
rails s -d
但又想做成系統(tǒng)服務(wù),做了如下嘗試:
1孔厉、使用sc命令:
sc create rails_serv binPath="d:\ruby\rails\rails_serv.bat"
sc config start=AUTO
net start rails_serv
然后就提示:服務(wù)沒有響應(yīng)控制功能拯钻。
第一次嘗試失敗。
2撰豺、使用第三方工具粪般,這里使用了一個國外的工具和一個國內(nèi)的工具,分別是:AlwaysUp和SrvanyUI(作者:王曄)污桦,但是都沒有成功亩歹。使用這兩個軟件,服務(wù)添加成功了,也啟動起來了捆憎,但是rails 程序跑不起來舅柜!
3、使用第三方工具把bat轉(zhuǎn)換成exe之后躲惰,進行第2條嘗試致份,結(jié)果一樣。
三次嘗試都失敗了础拨。
分析##
通過查詢資料氮块,得出的原因可能是因為windows 10上對做為服務(wù)啟動的程序,要求比win7及以前的操作系統(tǒng)更嚴格了诡宗,要嚴格按照服務(wù)程序的規(guī)范來寫程序滔蝉。不過vs已經(jīng)刪除了,臨時也沒有時間再次安裝塔沃,所以等下次玩C#的時候蝠引,再嘗試吧。
解決##
退而求其次蛀柴,以開機啟動程序的方式加載rails 服務(wù)螃概,方法如下:
1.創(chuàng)建bat文件快捷方式
2.進入C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
3.把快捷方式放入2中所示目錄內(nèi)
OK!