はじめに
前回では全体的な流れを確認しました。
次に、WEBアプリケーションを公開するための環境を構築していきます。
今回はAWSを利用できるようにするのが目標です。
※基本、全体的に詳細省いてますが、時間があったら詳細書くかもしれません。
1. AWSの利用
WEBアプリケーションを作る場合、作るまでの順番が色々あるとは思いますが、公開する以上、何はともあれWEBサーバが必要です。
昔はレンタルサーバを使ってブログとか作りましたが、今はAWSとかGCP使うことが多いみたいです。
どちらを使うか迷いましたが、国内の会社はAWSを利用していることが多いように感じたので、今回はAWSを使用することにします。
ちなみにAWSは無料枠があるので、今回はそちらを利用します。
2. AWS利用までの手順
流れは下記の通りです。
- AWSのアカウントを作成する
- Linux仮想マシンを起動する
- パブリックIPアドレスを設定する
- SSHによるリモートアクセスを行う
- Apacheを起動する
- SCPによるファイル転送
3. AWSのアカウント作成
まずはアカウントを作成します。下記を見ながら作成しました。
https://aws.amazon.com/jp/register-flow/
特に難しいことは無くて数分で完了しました。
4. Linux仮想マシンの起動
下記の手順でインスタンス(Linux仮想マシン)を作成しました。
- AWSコンソールにアクセスする
- EC2仮想サーバ を選択する
- 東京リージョンを選択する
- Amazon Linux AMIを選択する
- 無料枠のインスタンスであるt2.microを選択する
- キーペアを作成してDLする
- インスタンスを作成する
5. パブリックIPアドレスの設定
インスタンスにアクセスする際に使用するIPアドレスは、インスタンスを再起動すると変わってしまう可能性があるため、下記の手順で固定のパブリックIPアドレスを設定します。
- EC2ダッシュボードにアクセスする
- Elastic IPのメニューを開く
- 新しいIPアドレスを割り当てる(作成する)
- 先ほど作成したインスタンスにIPアドレスを関連付ける
- セキュリティタイプにHTTPを追加設定する
6. SSHによるリモートアクセス
試しに、下記手順でリモートアクセスをしてみます。
ちなみに、自分はWin環境なので、GitBashでターミナル利用しています。
- ローカルルートディレクトリに.sshフォルダを作成する
- .sshフォルダにDLしたキーペアを移動する
- (キーペアの権限設定して自分以外は編集不可にしとくと良いらしいです)
- ターミナルからsshで接続する
- アクセス成功
7. Apacheの起動
リモートアクセスできることが確認できたので、下記の手順でApacheをインストールします。
- ターミナルからSSHでインスタンスに接続する
- Linuxをアップデート
- Apacheをインストール
- Httpdの起動確認をする
- デフォルトでHttpdが起動するように設定する
- Apacheの動作確認をする
- htmlフォルダにindex.htmlを作成する
- アクセスして確認する
8. SCPによるファイル転送
ローカルファイルとインスタンス間のファイル転送をしてみます。
ただ、最初はインスタンスのwwwフォルダに書き込み権限が無いため、色々設定します。
- インスタンスのWWW以下フォルダに権限設定を行う
- ターミナルからSCPでローカルにindex.htmlをDLする
- index.htmlを編集して、インスタンスにULする
まとめ
- AWSでインスタンスが利用できるようになりました
- ローカルとインスタンス間でファイル転送ができるようになりました
次回はLAMP環境を構築したいと思います。
参考
paizaラーニング -AWS入門編1:Webサーバーを構築しよう-
https://paiza.jp/works/aws/primer/aws1