はじめに
前回の記事で初期段階の立ち上げまではうまくいったので、
今回はEC2の環境をセットアップしていきたいと思います。
〜おしながき〜
1. nginxのインストール、起動
2. GithubからEC2へのレポジトリのクローン
3. パブリックIPアドレスを用いて、「Hello World」を表示させる
1. nginxのインストール、起動
そもそもnginxってなんぞやって最初の時は思っていたので、ざっとまとめたいと思います。
- 無料で使えるwebサーバソフトのこと
- リバースプロキシ、HTTPキャッシュ、ロードバランサの役割を持つ
- Apacheなども同じ役割を持つ
みたいな感じでしょうか。
あと読みは「エンジンエックス」です、初見じゃ読めなかった記憶があります。
詳しい内容は以下のサイトも参考にしてみてください。
そうしたら、EC2にSSH接続をして進めていきます。
- インスタンスのアップデート
sudo yum update
- nginxのインストール
sudo yum -y install nginx
- インストールしたnginxのバージョンの確認
nginx -v
- nginxを自動起動するための設定
sudo systemctl enable nginx
- nginxの起動
sudo systemctl start nginx.service
- nginxのステータス確認
このコマンドを実行した時に、Active:active(running)
が返ってくると成功しています。
sudo systemctl status nginx
他にも使ったコマンドがあったのでメモしておきます。
# 構文チェックのコマンド
sudo nginx -t
# 更新後の再起動コマンド
sudo systemctl status nginx
2.GithubからEC2へのレポジトリのクローン
ここに関しては、
- GitHubのアカウント作成済み
- レポジトリ作成済み
を想定し、鍵作成から進んでいきたいと思います。
- EC2にgitをインストールする
sudo yum install -y git
- SSHキーの作成
ssh-keygen -t rsa -b 4096
- 作成されたキーをコピー
cat ~/.ssh/id_rsa.pub
これを行うと、長い文字列が出てくると思うので、これをコピーしておきます。
次からはgithubでの作業です。
鍵に関しては、ssh-rsa
から全部入れてもらって大丈夫です。
入力が終わったら「Add SSH key」をクリックします。
GitHubでの操作が済んだら、もう一度EC2のSSH接続の方に戻ります。
また、HTMLファイルは以下のようにしました。
簡単なもので大丈夫です。
<!DOCTYPE html>
<html>
<head>
<title>Hello World</title>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>
- GitHubとの接続テスト
ssh -T git@github.com
# 初回接続時は authenticity の確認が出るので yes と入力
- レポジトリのクローン
git clone git@github.com:ユーザー名/レポジトリ名.git
クローンする際には以下に注意してください
- SSH URLを使用していること
(https://
ではなくgit@github.com:
で始まるURL) - クローンする前に、クローン先のディレクトリに移動していること
- また、必要の応じてユーザー名とメールアドレスを設定
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
その他に関しては、gitのコマンド例 git push
と同じになりますので割愛します。
これでレポジトリを取り込むことができました。
3.パブリックIPアドレスを用いて、「Hello World」を表示させる
自分はここでつまずきました。クローンまでは済んでいるのは確認できていたのですが、
どうしてもnginxのデフォルトのページが出てしまいまして。
おそらくなのですが、~/nginx/htmlの配置下にhtmlファイルをおかないと起動しないようです。
.confファイルを書き換える方法もあるみたいですが、今回の目的とは違うので今度調べてみます。
- ドキュメントルートの権限を変更させる
sudo chown -R ec2-user:ec2-user /usr/share/nginx/html
- nginxのルートに移動してクローンする
cd /usr/share/nginx/html
git clone git@github.com:gitのユーザー名/レポジトリ名
最後に、EC2のコンソールに戻り、「パブリックIPv4アドレス」をコピーし、
http://xxx.xxx.xxx.xxx
を検索するとHello World
が現れると思います。
次回に向けて
とりあえずnginxの設定は終了したので、
次回はS3あたりを触っていこうかなと思います。