概要
AWSのECSでNginxコンテナを立ち上げてブラウザからアクセスを行う方法を記載する。
起動タイプはEC2を選択している。
なお、今回のクラスターは試験で作成しているため詳細の設定は省いている。
クラスターの作成
ECS画面に移動
AWSのコンソールにログインし、左上の検索バーで[ecs」と検索してECSの画面に移動する。
クラスターの作成
左サイドバーの「クラスター」をクリックして「クラスターの作成」をクリックする。
クラスターテンプレートの選択画面に遷移する。
今回はLinuxを使用する。
右下の「次へ」ボタンをクリックする。
任意のクラスター名とインスタンスタイプを入力して「作成」ボタンをクリックする。(今回はその他の値は設定しない)
タスク定義の作成
右サイドバーの「タスクの定義」から「新しいタスクの定義の作成」をクリックする。
タスク定義名と必要な場合はタスクロールと実行ロールを選択する。
次に「コンテナの追加」ボタンをクリックする。
任意のコンテナ名を入力する。
イメージはnginxの最新版を取得するので nginx:latest
と記載する。
メモリ制限に128MiBを設定する。(値は任意)
ポートマッピングはホストポートを0
コンテナポートを80
とする。
ホストポートを0
に選択することで、ホストが一時ポート範囲から任意のポートを動的に選択する。
「次へ」ボタンをクリックする。
タスクの実行
左サイドバーのクラスターをクリックして「タスク」タブを開き、「新しいタスクの実行」ボタンをクリックする。
これで先ほど定義したNginxのタスクを実行することができる。
実行が完了したことを確認できた。
EC2のインバウンドルールを変更する
最後にEC2のインバウンドルールを変更する。
現状はコンテナにアクセスできるポートは49153
番になっているがポートが空いていないためアクセスすることができない。
そのためEC2のインバウンドルールで割り当てられたポートを許可してアクセス可能にする。
タスクが実行完了したページの下部に「コンテナ」という章がある。
その中の▼をクリックしてホストポートと外部リンクを確認する。
後程ホストポートと外部リンクは使用するので、メモするかタブを開けたままにするのが良い。
同じ画面の上部に戻り、EC2インスタンスのリンクをクリックする。
今回作成したインスタンスをチェックし、セキュリティタブをクリックする。
その後、セキュリティグループのリンクをクリックする。
インバウンドルールタブの「インバウンドのルールを編集」ボタンをクリック。
ポート範囲に、今回作成したNginxコンテナに割り当てられたホストのポート番号を入力する。
CIDRブロックは「0.0.0.0/0」に設定して「ルールを保存」ボタンをクリックする。
最後に先ほど確認した外部リンクにアクセスするとNginxが立ち上がっていることを確認できる。
以上。