前回までにEC2インスタンスを作りましたので続きです
Railsで作ったアプリをAWSでデプロイ① 〜アカウント作成編〜
https://qiita.com/shunsuke284052/items/39bf73d1996251083c72
Railsで作ったアプリをAWSでデプロイ② 〜EC2インスタンス〜
https://qiita.com/shunsuke284052/items/6de92b0f832d6240f0bb
作ったEC2インスタンスにElastic IPを振り分けます
こうしないとEC2インスタンス作成時から振り分けられたパブリックIPはサーバー再起動の度に変化してしまいます
AWSから振り分けられた固定のパブリックIPアドレスであるElastic IPを振り分けます
左サイドバーの「Elastic IP」→「Elastic IP アドレスの割り当て」→「Amazon の IPv4 アドレスプール」→「割り当て」でカンタンに作成できます
作成したElastic IPをEC2インスタンスに紐付けましょう
リソースタイプは「インスタンス」
インスタンスは紐付けたいインスタンスのインスタンスID
プライベートIPアドレス、再関連付けは何も入力しません
EC2インスタンスの画面からElastic IPが振り分けられていることが確認できます
IPv4 パブリック IP = Elastic IPになっていますね
最後にポートをHTTPにも開放してあげて実際にインスタンスにログインしてこの回は終了にしたいと思います
EC2インスタンスメニューの「セキュリティグループ」から「launch-wizard-1」をクリックしてあげると英語の画面に遷移します
そこから「Inbound rules」→「Edit Inbound rules」を選択します
「Add rules」→「HTTP」を選択→Sourceを「Custom」「0.0.0.0/0」→あとは何もいじらず「Save rules」
「0.0.0.0」や「/0」は「全てのアクセスを許可する」という意味です
これでポートは開きました
EC2インスタンスにログインします
ローカルのターミナルでこちらを実行します
$ cd ~
$ mkdir ~/.ssh
# .sshというディレクトリを作成
# File existsとエラーが表示されたとしても、.sshディレクトリは存在しているのということなので、そのまま進みましょう。
$ mv Downloads/ダウンロードした鍵の名前.pem .ssh/
# mvコマンドで、ダウンロードしたpemファイルを、ダウンロードディレクトリから、.sshディレクトリに移動します。
$ cd .ssh/
$ ls
# pemファイルが存在するか確認しましょう
$ chmod 600 ダウンロードした鍵の名前.pem
# 権限を付与
$ ssh -i ダウンロードした鍵の名前.pem ec2-user@作成したEC2インスタンスと紐付けたElastic IP
#(例えばElastic IPが123.456.789であれば、shh -i ダウンロードした鍵の名前.pem ec2-user@123.456.789 というコマンドになります)
#(ダウンロードした鍵を用いて、ec2-userとしてログイン
初回ログイン時に何かしらの質問がきますがyesと答えてください
大きくEC2と書かれた画面が現れたら成功です