Herokuを用いたデプロイの手順
新年明けましておめでとうございます!!🍊
2021年は朝活(5:45〜)をします!(周囲に宣言してしまえばきっと継続できる!)
さて、本題です!
今回はHerokuを用いたデプロイについて、手順をまとめてみました!
(Herokuアカウントは登録済み、Heroku CLIをインストール済みとする)
では早速いきましょう!!
手順1:リポジトリの作成
※ masterブランチへcommitを行っておく!
手順2:Herokuへログイン
下記を実行後、メールアドレス、パスワードを入力する
% heroku login --interactive
手順3:Heroku上へアプリケーションを作成
アプリケーションのディレクトリに移動し、以下を実行
% heroku create アプリ名
手順4:MySQLを使用できるように設定
HerokuはデフォルトでPostgreSQLというデータベースになっているため
ClearDBアドオンを追加(以下を実行)することでMySQLが使用できる
% heroku addons:add cleardb
手順5:Mysql2への対応
railsにおいて、mysql2というgemを使用しているため
手順5−1:ClearDBデータベースのURLを変数に格納
% heroku_cleardb=`heroku config:get CLEARDB_DATABASE_URL`
手順5−2:変数を用いてHerokuのデータベースURLを再設定
% heroku config:set DATABASE_URL=mysql2${heroku_cleardb:5}
手順6:master keyを環境変数として設定
% heroku config:set RAILS_MASTER_KEY=`cat config/master.key`
これでmaster keyの情報を外部に漏らさず、Heroku上でもcredentials.yml.enc
を扱える
手順7:Herokuアプリケーションへ情報をpush
Herokuへコミットをプッシュすることで、アプリケーションの情報を追加
% git push heroku master
手順8:Heroku上でマイグレーションの実行
heroku run を用いることで、Heroku上でコマンドが実行できる
% heroku run rails db:migrate
手順9:Herokuにデプロイされたアプリケーションの情報を確認
% heroku apps:info
以上の手順で、アプリケーションをデプロイができます!👏
ちなみにデプロイ済みのアプリケーションに変更・修正を加えた場合は、
変更をcommitし、マスターブランチへマージを行い、Herokuへpushします!
テーブルの変更を行った場合はマイグレーションをお忘れなく!
また、何度か出てきたheroku config コマンドについて簡単に補足します!
heroku config 環境変数の一覧を確認
heroku config: get 環境変数名 環境変数の取得
heroku config: set 環境変数名=セットしたい値 環境変数の追加・変更
heroku config: unset 環境変数名 環境変数の削除
自分でまとめてみると、初めて行った時より理解度が深まりました!
改めてアウトプットや復習の重要さが分かります👀
ここまで読んでくださりありがとうございました!✌🏻
誤りがあれば教えてください!
引き続きよろしくお願いします!!
【プログラミング】form_withについて
こんにちは!
今週は自分が理解に苦しんだform_withについて書いていきます!
結論、
@roomと@messageは、formで入力した内容が
どこのモデルと紐づくのかを示しているから。(、、、と自分なりに解釈)
@messageは空のインスタンスのため、createアクションの発火にも一役買っている!
@roomは、既にidを取得しているため、@messageが紐づくべきレコードを示してくれている!
ちなみにモデル間では下記のアソシエーションが組まれている。
roomモデル has_many: messages
messageモデル belongs_to: room belongs_to: user
せっかくなので保存までの流れも自分なりの解釈で書いていきます!
formで送られる内容(パラメーター)はこうなっている。(一部省略)
パラメーターの中のroom_idはparamsで受け取られ,
入力した値は、params_messageメソッド(ストロングパラメーター)を通して、@messageに代入される。
そしてsaveメソッドでデータベースに保存される!
こんな感じの流れで動いている、、、はず!!
解釈が間違えていたら教えてください😹
学習を開始して3週間、段々と内容が複雑に感じてきました、、、が負けません!
ここまで読んでくださりありがとうございました!!!1
ブログラミング学習を始めて2週間で学んだこと
オンラインでプログラミングを学習を開始して2週間が経ちました!
アウトプットが大事!と教わり、不慣れですが所感をまとめさせていただきます😃
この期間、自分の力になったこととして大きく2点あります。✌🏻
1:プログラミングスキル (...あたりまえ)
(HTML、CSS、Ruby、Ruby on rails、Linuxコマンド Git、GitHub、テストコード)
2:日々の学習習慣
(集中力を高める、学習時間の確保、自分で調べる癖)
まず1つ目に関しては、思っている以上に多くスキルが身についたと思います。
もちろんまだ独り立ちはできておらず、メンターの方々や同期の受講生の皆さん、
分かりやすい学習教材の力があり、学習を進められています。
初めは難しいと感じることでも、やっていくうちに本質を理解できて、
自分がイメージしている挙動が実際にPCの画面で実装できた時は、なんとも言えない
感覚があります。一人で「よっしゃ!」と喜んでいます。
そして2つ目の学習週間。今回はこのことが書きたくて記事を書いています。
もともと勉強が好きでも得意でもない自分が、今では毎日休憩を除いて7時間以上
勉強することができています。もちろん集中力は持続しています!
その要因として、個人的に大きいと感じているのは、「ポモドーロテクニック」です。
簡単に説明すると、
人が持続できると言われている集中時間(25分〜60分)を決めて、勉強する。(タイマーなどで図るといい!)時間が来たらどんなに中途半端な状態でも休憩する。
以上です。
非常に簡単ですがめちゃくちゃ効果的です!ざっくり原理を説明すると、中途半端に中断したもやもや感が、脳へのいい刺激となり、学習を再開した時に脳が情報を整理しようとするからです。
まだまだプログラミング初学者で、未熟ですが、こういった知識を増やして
効率よく学習を進めていこうと思います。
ここまで目を通してくださりありがとうございました。
これからも週1発信続けていきます!よろしくお願いします!😁
ご挨拶 〜ブログ開始!〜
おはようございます🐥
今日からブログを始めます!
更新は、毎週日曜日を予定しています✏️
(軌道に乗れば頻度をあげていきます!)
内容は大きく2つです。
💻プログラミングについて(学習の成果、学習方法の振り返り、話題のトピック)
📚読書について(最近読んだ本)
よろしくお願いします👀