提醒:由於看到這系列鐵人訂閱人數漸漸變多,標記一下這些內容是在「非常萌新時期」所寫,更多技術內容請參考我的 Github,歡迎跟我一起討論 ^ ^
做好發佈前的準備後,接著可以將產品託管在 主機供應商(hosting provider),此教材選擇了 Heroku,為一個有提供 資源受限的永久免費 選項的 雲端 PaaS 服務(Platform as a Service)。其已將大部分生產環境設置好,較易上手、成本低,但靈活性也較低。因此適合此處選來演示學習成果。
Heroku 需通過 Git 添加一個名為 heroku 的 git remote,來指向在 Heroku雲端的 repository。並使用 Git 來上傳/同步所做的任何更改。
git clone https://...你的Git repository的 URL
git add -A
將所有檔案列入追蹤。git status
查看版本庫狀態,來檢查你將要 commit 的檔案是否正確。git commit -m '你的註解'
,將檔案 commit 到 local repository。git push origin master
,將 local repository 同步到 Git repository 。為了讓 app 能在 Heroku 上運行,需要做一些調整。
"version": "0.0.0",
"engines": {
"node": "10.15.3"
},
"private": true,
const mongoDB = process.env.MONGODB_URI || process.env.MONGODB_DEV
(這裡原文教學將開發用的Database寫在code裏頭,後來隔天研究git時,想想不太對,應該不能把任何金鑰寫進code,因此我先暫時把兩個都寫在環境變數裏頭。參考)
heroku create
執行)git push heroku master
執行)
heroku open
執行)
heroku config:set NODE_ENV='production'
heroku config:set MONGODB_URI='你新的 MongoDB 的 URL'
heroku config
查詢已設定的 環境變數。heroku logs
:列出當下所有的 log。heroku logs --tail
:列出當下所有的 log,並持續更新。heroku ps
:列出 dyno 的狀態。(如:其剩餘使用時間)heroku git:remote -a '你的專案名字'
:重新將 git 連接到 heroku 的專案到目前為止,總算是完成了 The Local Library website 的教學啦,今天將我的圖書館網站成功發佈上線,並放上我的GitHub。接下來將繼續學習其他部分並以此圖書館網站來實踐,增加其完整度。
小插曲:最近發現,當 npm 有新版本時,在你使用後,會出現提示訊息告訴你。