OpenShift - 免費的雲端主機
當你已經寫好自己的Nodejs伺服器,想要讓大家都連到我們伺服器使用我們的服務,該怎麼做呢?前面我們有教到Ngrok,有了它,你就可以把你的電腦當作伺服器,你會說但是這樣我不就一直開著電腦嗎?沒錯!伺服器本來就得一直開著,別人才能隨時登入,如果你在自己家架設伺服器的確是這樣。但現在資訊科技發達,很多時候我們不需要自己管理跟架設這些設備,我們只需要跟別人租,其他問題別人都會幫我們處理好,天底下就是沒有白吃的午餐,租機器都是要花費的。
但在這邊為你隆重介紹OpenShift,這平台能讓你免費架設1個線上服務,也就是說你可以寫1個Nodejs專案上傳到這邊,你的電腦就不用一直開著了。而且流量限制是無限的,代表不管有多少人造訪或使用你的服務都是免費的,但是有空間跟主機數量的限制,不過這對我們來說都沒什麼影響,開始來使用OpenShift吧!
OpenShift 免費版服務
- 主機數量 : 1
- 網頁空間 : 1 GB (每台主機)
- 記憶體 : 1 GB (每台主機)
- 流量限制 : 無限
開始使用 OpenShift
第1步:註冊並建立主機
先進去OpenShift,openshift已經從2代升級到3代,所以只能註冊openshift 3,我們點選選右上角的SIGN UP FOR FREE,你可以自己創一個RedHat帳號,或是用其他第三方登入,像是Google、Facebook等。 - 舊版的註冊教學
接著建立Nodejs專案,參考教學影片
第2步:上傳Nodejs專案
想要使用OpenShift上傳專案,不像Google雲端硬碟,輸入帳密之後就可以登入並上傳專案,在OpenShift中,使用了一種RSA的加密技術,我們必須用軟體產生兩把金鑰,一把叫做「公鑰」的會被傳到Openshift上,另一把「私鑰」會存在自己的電腦,這樣我們跟OpenShift傳輸資料時才會更加安全。你可能會不懂剛剛那段話到底在幹嘛?所以我們先來了解OpenShift用的加密技術到底是怎樣進行的,剛剛提到的RSA太過複雜了,我們只要了解它是一種非對稱加密演算法就可以了,看看非對稱加密演算法的介紹影片你就能理解了。
稍微了解之後,讓我們製作金鑰吧!下載PuTTYgen並依照教學進行製作,因為能用的方法太多了,所以提供了幾個教學,先依照指示產生「公鑰(Public Key)」並貼到OpenShift上,接著將「私鑰(Public Key)」餵到TortoiseGi、SourceTree、PuTTY、FileZilla中進行連線,再上傳專案。
- 使用TortoiseGi上傳
- 使用Putty連線
- OpenShift 教學:取得FTP,透過FileZilla使用sftp連線管理
- 如何部屬 Nodejs 程式到 Openshift 上?
- Openshift node.js的第一個範例
要注意的是,OpenShift已經設定好預設的IP與PORT,所以我們不能自訂IP,必須以規定的常數
process.env.OPENSHIFT_NODEJS_PORT
、process.env.OPENSHIFT_NODEJS_IP
來取代,範例如下。
var ipaddress = process.env.OPENSHIFT_NODEJS_IP || "127.0.0.1";
var port = process.env.OPENSHIFT_NODEJS_PORT || 8080;
app.listen(port, ipaddress, function() {
console.log("Server running at http://"+ipaddress +":"+port;
});