1 railsのgemをインストール
#rails6の場合
gem install rails -v 6.0.1
#rails5.2の場合
gem install rails -v 5.2.1
2 Postgresqlインストール
$ sudo sh -c "echo 'deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main' > /etc/apt/sources.list.d/pgdg.list"
$ wget --quiet -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install postgresql-common
$ sudo apt-get install postgresql-9.5 libpq-dev
3 PostgreSQL Account を作る
$ sudo -u postgres psql
postgres=# create role <username> with createdb login password '<password>';
postgres=# \q
4 Rails new
rails new appname -d postgresql
cd appname
5 config/database.ymlの編集
default: &default
adapter: postgresql
encoding: unicode
pool: 5
# 以下、3行追加
username: <username> # 設定したPostgreSQL Accountと同一のもの
password: <password> # 設定したPostgreSQL Accountと同一のもの
host: localhost
development:
<<: *default
database: appname_development # appnameのところは、rails new時のappnameになっているはずです。
test:
<<: *default
database: appname_test # appnameのところは、rails new時のappnameになっているはずです。
6 rails db:createでデータベースを作成&webpackerインストール
$ cd appname
$ rails db:create
#rails5の場合は不要
$ source <(curl -sL https://cdn.learnenough.com/yarn_install)
$ yarn install --check-files
$ rails webpacker:install
#config/enviroments/development.rb
config.hosts.clear
7 Heroku CLI Download and install
$ sudo curl https://cli-assets.heroku.com/install-ubuntu.sh | sh
$ heroku --version
8 Heroku ログイン
$ heroku login
Email: you@example.com
Password: xxxxxxxx
9 Heroku デプロイ準備& デプロイ
$ cd rails app
$ git init
$ git add -A
$ git commit -m "first"
#デプロイ
$ heroku create
$ git push heroku master
$ heroku run rake db:migrate
--応用編--SSH設定をしてherokuアプリ作成
1 まずはHerokuにログインします。
$ heroku login --interactive
# メールアドレスとパスワードを求められるので、入力しエンターをクリック
Enter your Heroku credentials:
Email: test@test.com
Password: *********
2 次に鍵をHerokuに追加します。
$ heroku keys:add
3 Herokuにアップロードしますか?と聞かれるのでyを入力する
? Would you like to upload it to Heroku? (Y/n)
#すると以下のようなコードが出てきたら成功です。
Uploading /home/ec2-user/.ssh/id_rsa.pub SSH key... done
4 デプロイ
$ heroku create newsable-skillhub
# Herokuにアプリが作成される。
Creating ⬢ newsable-skillhub... done
https://newsable-skillhub.herokuapp.com/ | https://git.heroku.com/newsable-skillhub.git
$ git init
$ git add -A
$ git commit -m "first"
$ git push heroku master
$ heroku run rake db:migrate
#seedも更新する場合は
$ heroku run rake db:seed