Blog 搬離 Heroku 一段時間了,因為免費的 JawsDB 只有 5mb,在使用一個多月後就爆炸了,所以只能搬離到其他地方,但 Heroku 真的是簡單方便好用,再加上是因為 DB 問題,不然免費的 Dyno 其實很足夠了,這邊還是推薦小應用的 app 用 Heroku。

這邊來來說說新家的選擇,原本想說還是用 GCP 好了,但…

GCP 的免費方案如下:

所有 Google Cloud 客戶都能在指定的每月用量限制範圍內免費使用特定 Google Cloud 產品,例如 Compute Engine、Cloud Storage 和 BigQuery。只要不超出免費方案的限制,這些資源就不會耗用您的免費試用期抵免額,試用期結束後也不會向您的 Cloud Billing 帳戶付款方式收取費用。

總之還是挺麻煩,找來找去看到號稱永遠免費的 Oracle Cloud Free Tier,除了 Always Free 還可以開兩套 VM,感覺相當佛心,再加上 Aws、Azure、GCP 這三家我都用過了,看到老字號的”甲骨文”怎麼說都得試一下。

Oracle Cloud Free Tier 註冊的時候一樣是要通過信用卡認證,不過除非升級帳戶,不然不會被自動扣款,所以可以安心的交出信用卡。再註冊完登入進去之後個人覺得不像 Aws 那麼複雜,也不像 GCP 那麼簡單,比較像 Azure 的感覺,使用上清楚明瞭,但就是整個頁面有點卡卡的感覺。

建立 VM instance 之後可以選離我們比較近的 Tokyo,這應該是少數可以選擇亞洲地方的 Free VPS,另外作業系統也有很多選擇,我是選比較習慣的 Ubuntu,而預設是 Oracle Linux,再建立完 VM 跟設定完 Public IP 後,接下來就是惱人的防火牆了,不知道為什麼,我的 Port 就是怪怪的,Oracle Cloud Ubuntu 預設用 iptables,但不管我怎麼設定就是連不進去,就在想放棄的時候看到網路上也有一些人遇到同樣的問題,解法方法就是直接砍掉 iptables 用簡單的 ufw。

首先因為是要用 blog,所以要確保 Oracle Cloud  設定頁面裡把 Port 80 / Port 443 打開

ufw 設定

#打開port
ufw allow 22
ufw allow 80

#打開防火牆
ufw enable

#刪除iptables跟重裝
apt-get remove iptables
apt-get install ufw

#安裝完後重開機確認
ufw status

都好了就可以用 nmap 檢查一下 Port 有沒有開啟,我是這樣設定完就搞定。

以上就是從 Heroku 搬到 Oracle Cloud 的一些小小心得,因為原本 Blog 的圖檔都是放在 Cloudinary,所以搬家的時候只要在 Ghost 後台 Export JSON,然後在新的網站輸入後就一切搞定,相當輕鬆。

最後還是要說一下 Oracle Cloud 使用上的感覺,除了時不時主機卡住,跟超爛會壞掉的網頁管理介面之外,其餘還算是滿意,畢竟 Always Free 就是要放寬心。