coding with alpaca-51 deploy 到 heroku

安裝 heroku cli

brew install heroku
heroku login
#輸入 heroku 帳密

創一個 heroku app

heroku create codingalpacas
# create 後面接想要的名字
heroku rename alpaca
# rename 後面接想要的名字,可以改名
heroku destroy
# 直接刪除 heroku app

把 gemfile 裡 sqlite3 剪到

group :development, :test do
gem 'sqlite3'
end

gemfile 裡新增

group :production do
gem 'pg'
end

建議開發環境跟部署環境都使用 postgre sql

設定 ruby 版本

ruby '2.4.1'

bundle

bundle --without production
# 沒有加 --without production 會炸掉

產生一個鷹架

rails g scaffolg Article title:string content:text
rails db:migrate

設定 root

root 'articles#index'

推上 heroku

git push heroku master

production 也需要跑 db:migrate

heroku run rails db:migrate

有裝 yarn 的話會跳錯,因為 yarn 是 node 體系,deploy 到 heroku 應該先跑 node(抓css) 再跑 rails,但 git push heroku master 會先跑 rails 再跑 node

heroku buildpacks
# 看 build 順序
heroku buildpacks:clear
# 清除build 順序
heroku buildpacks:add heroku/nodejs
heroku buildpacks:add heroku/ruby

當 rails g controller 之類的卡住時

spring stop

用 carrierwave 搭配 aws s3 才能上傳圖片

總的來說步驟:

  1. 安裝 heroku cli
  2. 創造 heroku app
  3. 安裝 gem ‘pg’
  4. bundle --without production
  5. 設定 root
  6. 推上 heroku
  7. 跑 migrate
One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.