從 nodejs 的 github wiki 上可以找到一個頁面為 Node hosting 上面有相當多的服務可以選擇使用,著要是測試用機器,所以幾個重點條件就是:
1. deploy 後立馬可以使用
2. 可以跑 nodejs 並且支援 0.8+ 的版本
3. 使用 Git 做版本控管
4. 免費(超重要)
基於以上條件目前使用過兩個服務:
1. heroku
2. openshift
這次先來介紹 openshift,oepnshift 是頂頂大名的 redhat 提供的服務,這次使用的是 openshift online,產品定位為 Public Paas,有支援語言:Nodejs 0.6+, 0.10+, JAVA, PHP, Python, Ruby, Perl, GO (註1),或是可以直接在上面架設 Jenkins, Drupal, Wordpress 可直接開啟不需要自行 deploy。 openshift 官方還有寫了一套 Command-line client 工具來對 deploy 上去的 app 坐操作,關閉、啟動、重起、目前的 log 等,詳細可至官方查詢。
當然最重要的 openshift 符合我們所有的條件,並且免費的 Gear(instance) 可以開三台,如官網價錢:
Size | MemMemory | Storage | Recommended for | Cost |
---|---|---|---|---|
Small | 512 MB | 1-6GB 1GB expandable |
PHP, Perl, Python, Ruby, Node.js, MySQL | $0.04 after the first 3 |
Medium | 1GB | 1-6GB 1GB expandable |
Java, MongoDB, PostgreSQL | $0.10 |
Medium (with JBoss EAP 6) Java EE6 Full Profile |
1GB | 1-6GB 1GB expandable |
JBoss EAP | $0.13 |
這麼佛心看到只能馬上跪下說聲「謝主龍恩」不然也不知道該怎麼辦,目前使用上除了 deploy 速度很慢(相較起 heroku),web 介面非常醜並且不人性化,常常找不到資料,官方文件看不太懂以外,其實還蠻不錯的,畢竟是要免費的測試機還是別太苛求。
目前就一點特別需要注意,deploy 上去後 port 與 root url 設定上與一般不太相同,必須修改如下:
port 必須設定為「process.env.OPENSHIFT_NODEJS_PORT」
root url 必須設定為「process.env.OPENSHIFT_NODEJS_IP」
以 sails 為例,local.js 必須修改如下
註1. 除了nodejs 外其他語言支援版本可至官方開發者中心查詢
相關連結
nodejs
github wiki
Node hosting
heroku
openshift
openshift developer center
openshift Command-line client
openshift pricing
sailsjs
沒有留言:
張貼留言