LoginSignup
2
0

More than 1 year has passed since last update.

ECSハンズオンをやったメモ

Posted at

はじめに

今どきの新人は新人研修でコンテナ周りの扱いを一通りやって簡単なサービスを作るところまで行くらしい。
いいなぁ新人は。僕は教えてくれる人がいないから自分で勉強するしかない。
ハンズオンという良い勉強資材があるらしい。

今回はこれをやりました。

ECRでリポジトリ作る

WebコンソールでECRのページにいく。左のメニューからリポジトリを選択。
リポジトリを作成→リポジトリ名を記入してそのまま作成。
URIをコピーしておく。12ケタ.dkr.ecr.ap-northeast-1.amazonaws.com/h4b-ecs-helloworldという風になってるはず。

Cloud9で作業

Cloud9を適当に立てる。以下Cloud9でdockerコマンドを打っていく。

Dockerfileかく

画面でDockerfileを作って保存する。起動したらapacheが動くというだけのもの。

FROM ubuntu:18.04
​
# Install dependencies
RUN apt-get update && \
 apt-get -y install apache2
​
# Install apache and write hello world message
RUN echo 'Hello World!' > /var/www/html/index.html
​
# Configure apache
RUN echo '. /etc/apache2/envvars' > /root/run_apache.sh && \
 echo 'mkdir -p /var/run/apache2' >> /root/run_apache.sh && \
 echo 'mkdir -p /var/lock/apache2' >> /root/run_apache.sh && \ 
 echo '/usr/sbin/apache2 -D FOREGROUND' >> /root/run_apache.sh && \ 
 chmod 755 /root/run_apache.sh
​
EXPOSE 80
​
CMD /root/run_apache.sh

コンテナイメージつくる

タグはさっきつくったECRリポジトリ名にしておく。

docker build -t 12ケタ.dkr.ecr.ap-northeast-1.amazonaws.com/h4b-ecs-helloworld:0.0.1 .

コンテナつくれたのを確認する

docker images

ECRにログインする

aws ecr get-login-password | docker login --username AWS --password-stdin 12ケタ.dkr.ecr.ap-northeast-1.amazonaws.com

さっきつくったECRリポジトリにプッシュ

docker push 12ケタ.dkr.ecr.ap-northeast-1.amazonaws.com/h4b-ecs-helloworld:0.0.1

これで、さっきのECRリポジトリにイメージが入ったはず。

VPCを作成

Webコンソールで適当にパブリックVPCを作成する。
VPCウィザードつかうとゲートウェイもルーティングも全部やってくれる。こんなに簡単だったんか。
セキュリティグループで、インバウンドのHTTPを開けておく。

ECSでFargateクラスターつくる

クラスターの作成:さっきのVPCを指定して作成
タスク定義の作成:さっきECRに突っ込んだイメージのURIを指定した定義をつくる。
 ポートマッピングで80をマップしとく。CPU、メモリなどもここで指定
サービスのデプロイ:作ったクラスターのサービスタブでデプロイ
 必要タスク数(今回は2)、ALB、リスナー(80)、ターゲットグループ、VPC、サブネット、セキュリティグループを指定

完成~!

デプロイが終わったらネットワーキングタブのオープンアドレスを開いてみる。無事開ければOK。
あとタスクの一個を手動で落としてみたり、タスクを増やしてみるオマケをやってもよい。

片付け

ALB、TargetGroup
ECS サービス、クラスター
VPC
ECR
Cloud9
を消す。

まとめ

今回のハンズオンは
・Cloud9でdockerイメージ作成し、ECRにつっこむ作業
・ECRにあるイメージでECSのFargateサービスクラスターをALB付きで起動する作業
を行いました。AWS便利だねぇ。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0