--- title: 12th 鐵人賽 Day_28 專案部署?Heroku? tags: 12th 鐵人賽 --- # 12th 鐵人賽 Day_28 專案部署?Heroku? 嗨!各位朋友大家好,打給後,歹嘎吼,胎尬喉,我是阿圓,一樣有請今天的one piece: ![](https://i.imgur.com/laJzeTb.png) (克比也是挺勵志的一個角色!) 昨天終於簡單介紹完了 action cable ,在最後這幾天想來講一下專案部署的部分,部署的方式有兩種,一種是使用方便的heroku 平台,一種是使用AWS、GCP的主機部署,今天先來講 Heroku 平台的服務。 # Heroku ? >Heroku是一個支援多種程式語言的PaaS(platform as a service(平台即服務)) 至於什麼是PaaS呢?請參閱 [wiki](https://en.wikipedia.org/wiki/Platform_as_a_service) Heroku 就是一個遠端平台,你可以利用 GitHub ,將你的專案放在這個平台上動起來。(也就是不用管 server 主機的設定,他會幫你做好) 至於要怎麼做呢? 1. 請先申請 heroku 帳號,並建立專案空間。 2. 安裝 Heroku Cli ,請參閱[官方說明](https://devcenter.heroku.com/articles/heroku-cli) 3. 在終端機裡: ```bash= $ heroku login Enter your Heroku credentials. Email: 請輸入你的 heroku Email Password (typing will be hidden): Logged in as xxxxx ``` 4. 由於 Heroku 是利用 git 部署,請記得將專案加入 git 版控!接著,請在終端機輸入: ```bash= $ heroku create ``` 這個指令,會幫你在 heroku 開一個伺服器,並在 git 建立一個 Heroku 遠端分支。 5. 最後把專案推上 Heroku: ```bash= $ git push heroku master ``` 這裡就會將專案推到 heroku 上的伺服器,自動地幫你 bundle install。(請注意,資料庫用 SQLite 3,的話這裡會出事,因為 Heroku 預設支援 PostgreSQL 資料庫,請記得改過來。) 6. 在 heroku 上執行 `rails db:migrate` ```bash= $ heroku run rails db:migrate ``` 最後就可以在 heroku overview 的地方,點選 點選 open app,打開你網頁了! 不過 heroku 免費版的有一些限制: 1. 30 分鐘沒有人連線的話就會進入休眠 2. 每天至少要休眠 8 小時的限制 不過對於小流量的網站,這些就綽綽有餘了!感謝各位看到這邊,若有任何建議,請各位不吝指教!我們明天見! ![](https://i.imgur.com/PPbpd2b.gif)