【RailsをAWSにデプロイ①】AWS登録、EC2の作成、SSHログイン
- 2020.03.17
- AWSのEC2にRails6アプリケーションをデプロイしてみた
- EC2, PostgreSQL, Ruby, Ruby on Rails, プログラミング学習, 実践!開発コース/TOMONI×Lagoon

こんにちは、Mako(@makokamiya)です。
Startup Lab LagoonとTOMONIとのコラボ、「実践!開発コース」での学習記録です。
この記事はRailsアプリケーションをAWSのEC2にデプロイした流れをまとめてみた、忘備録です。
AWSアカウント作成と設定
Amazon Web Service とは
Amazon Web Service(AWS)は、クラウドコンピューティングサービスの1つです。
図解即戦力 Amazon Web Servicesのしくみと技術がこれ1冊でしっかりわかる教科書
(中略)
クラウドコンピューティングサービスとは、かんたんにいえば、サーバーやネットワークなどをインターネット経由で貸してくれるサービスで、いつでもどこでも始めることができます。
(中略)
AWSでは、コンピューティング、ストレージ、データーベース、分析、ネットワーキング、モバイル、開発者用ツール、管理ツール、IoT、セキュリティ、エンタープライズアプリケーションなど、多岐にわたるサービスが用意されています。AWSのさまざまなサービスを組み合わせれば、あらゆるアプリケーションやインフラを実現することができます。
AWSアカウントの作成
こちらのリンクを参考にアカウントを作成。
AWSアカウント作成の流れ
ちなみにこのAWSのアカウントは、インターネット通販のAmazonアカウントとは別です。
AWSアカウントの初期設定
こちらのリンクを参考に設定
AWSアカウントを取得したら速攻でやっておくべき初期設定まとめ
EC2インスタンスの作成と設定
Amazon EC2とは
Amazon Elastic Compute Cloud (Amazon EC2)は、コンピューティングキャパシティーを提供するサービスです。かんたんにいえば、サーバーに必要な一式をクラウドで借りられるということです。
図解即戦力 Amazon Web Servicesのしくみと技術がこれ1冊でしっかりわかる教科書
IAMユーザーでログインしてEC2を作成
先ほど作成したIAMユーザーでAWSマネジメントコンソールへログインし、検索窓で「EC2」を検索して選択します。

左のメニューバーから「インスタンス」を選択して「インスタンスの作成」を選択します。

Amazonマシンイメージ(AMI)の選択
AMIとは、あらかじめOSやソフトがインストールされている型のようなものです。
とりあえず、一番上の「Amazon Linux 2 AMI (HVM), SSD Volume Type」を選択します。

セキュリティーグループの作成
セキュリティーグループはネットワークへのデータの出入りをコントロールするファイアウォールです。
任意のセキュリティグループ名を指定して、「タイプ」を「SSH・HTTP・HTTPS」と選択し、「ソース」を「任意の場所」と選択します。
「SSH」は暗号化した通信で安全なEC2インスタンスへのアクセスを許可します。
「HTTP・HTTPS」はブラウザからHTTP・HTTPSでアクセスすることを許可します。

キーペアを作成
キーペアとは、SSHでEC2インスタンス に接続する際に使用する、公開鍵と秘密鍵のペアです。
任意の名前で新しいキーペアを作成しダウンロードします。

最後に「インスタンス の作成」をクリックするとインスタンス が作成されます。
下記のように「2/2のチェックに合格しました」と表示され、インスタンス の状態が「running」になると準備完了です!

SSHログイン
EC2インスタンス の準備ができたので、まずはブラウザベースでSSH接続してみましょう。
先ほどの画像の、「インスタンス の作成」ボタンの右にある灰色の「接続」ボタンをクリックしすると下の画像の画面が表示されます。

上の画像のように「EC2 Instance Connect (ブラウザベースの SSH 接続」を選択、青色の「接続」をクリックします。

EC2インスタンス へ接続できました!!!
ちなみに、「スタンドアロン SSH クライアント」を選択し、説明のとおり操作すると、いつも使っているターミナル等から接続することもできます。
次回から、この画面上でRubyやRailsなど必要なソフト等をインストールしていきます。
参考
・個人開発のための Webサービス公開マニュアル
・図解即戦力 Amazon Web Servicesのしくみと技術がこれ1冊でしっかりわかる教科書
・AWSアカウントを取得したら速攻でやっておくべき初期設定まとめ
・AWS アカウント作成の流れ
まとめ
いかがだったでしょうか!
SSH接続できたときは、やったーと感動しました!
学習の一環として実際にアプリケーションを開発する際、技術書やQiitaの記事をコピペして、とりあえず動ごいた!という感動を経験することって大切だと思います。
しかし、ある程度の感動体験をしたら、用語の理解やアウトプットもしていかないと、つまずく回数が多くなってくるなーと感じました!
プログラミング学習中のかたは、これからも一緒に頑張っていきましょう(^O^)
ではまた!