はじめに
AWSの勉強として、とりあえずEC2をWEBサーバとして立ち上げてブラウザに「Hello World!」を出力してみます。
アウトライン
- EC2インスタンスを新規に立ち上げる
- EC2インスタンスにSSH接続する
- EC2インスタンスにApacheをインストールする
- Apache内にindex.htmlを作成する
- ブラウザで確認する
SSHコマンドおさらい
- ルートユーザに移動。インストール操作を可能にする。
sudo su -
- ソフトウェアの更新状況を確認する
yum update -y
- サーバにApachをインストールする
yum install httpd -y
- Apacheを立ち上げる
service httpd start
- フォルダ遷移
- htmlフォルダは
/var/www/html
- htmlフォルダは
cd
- ファイル、ディレクトリの情報を表示する
- ディレクトリ内で一覧を表示するのによく使う
ls
- 今回index.htmlファイルを作成、編集するのにvimを使います
vim
- Apacheを再度立ち上げる
service htttpd restart
Vim操作おさらい
- 新規作成
$ vim ファイルパス
- 存在しないファイルを指定すると、新規作成
- 編集開始
:i
- insert
- 編集終了
escキー
- コマンド入力モードに戻る
- 上書き保存
:w
- !をつけると強制上書き
- 名前を付けて保存
:w ファイルパス
- 既に存在する場合はエラー
- !をつけると強制上書き
- 終了
:q
- 未保存の場合はエラー
- !をつけると強制終了
- Vimを開いている状態で別のファイルを開きたいとき
:e ファイルパス
1. EC2インスタンスを新規に立ち上げる
とりあえずお金かからないような設定でEC2を立ち上げます
AMI
- AL2 64bit(x86)
インスタンスタイプ
- t2.micro
インスタンス詳細設定
- 削除保護の有効化、モニタリングにチェックを入れる
- それ以外はとりあえずデフォルトの設定で
- 本来はVPCを作成してからEC2を配置します
TODO 後述記事へのリンク
ストレージの追加
- 今回はデフォルトの汎用SSDを使用する
タグの追加
- 名前ぐらい登録しておきましょう
- WEBサーバなので
- キー: name
- 値: web-1a
TODO さすがに名前変えた方がいいかも
- ビジネス利用を想定して
- キー: department
- 値: development
セキュリティグループの設定
- アクセス方式、アクセス制御について設定するところです
- デフォルトで設定されているSSHに加えてHTTP、HTTPSを追加します
- IP指定もできるが、今回はフルオープン(オール0)で
キーペア
- 既存で作成してたらそれで
- 既存で作成していない場合は。。。
TODO キーペア作成についての記事へリンク
2. EC2インスタンスにSSH接続する
- ターミナル使ってアクセスしていきます
$ ssh ec2-user@パブリックIP -i 秘密鍵ファイルパス -p 22
- 毎回コマンドで打つのはめんどうなので
~/.ssh/config
へ以下を追記しましょう
Host 好きな名前
HostName パブリックIP
User ec2-user
IdentityFile 秘密鍵ファイルパス
Port 22
TCPKeepAlive yes
IdentitiesOnly yes
$ ssh 好きな名前
で接続できるはず。
3. EC2インスタンスにApacheをインストールする
- ルートユーザに移動します
$ sudo su -
- ソフトウェア更新状況を確認します(アップデートが必要なソフトウェアの有無を確認しています)
$ yum update -y
yumとは
Linuxに入っているパッケージソフトウェアの管理を行うコマンド
- Apacheをインストールする
yum install httpd -y
Apacheとは
WEBサーバソフトウェア(HTTPサーバ)
- Apacheを起動する
service httpd start
4. Apache内にindex.htmlを作成する
- htmlフォルダに移動する
cd /var/www/html
- index.htmlを作成する
vim index.html
- index.html内に以下を記載して保存する
<html><h1>Hello World!</h1></html>
- Apacheをリスタートする
service httpd restart
5. ブラウザで確認する
- パブリックIPをURLに貼り付けて「Hello World!」が出力されていれば成功です