AWS Copilotを使ってみた
AWS Copilot を使ってみた
AWS より ECS 周りを簡単に実装できるツールがリリースされました。物は試しと早速使ってみました。
インストール
- Linux の場合
curl -Lo /usr/local/bin/copilot https://github.com/aws/copilot-cli/releases/download/v0.2.0/copilot-linux-v0.2.0 && chmod +x /usr/local/bin/copilot && copilot --help
- MAC の場合注意: AWS CLI は事前にインストールしておき、設定を完了しておく必要があります。
curl -Lo /usr/local/bin/copilot https://github.com/aws/copilot-cli/releases/download/v0.2.0/copilot-darwin-v0.2.0 && chmod +x /usr/local/bin/copilot && copilot --help
コンテナの準備
まず、Docker コンテナを用意します。具体的な手順はこちらを参照してください。
Copilot を使ってみる
-
アプリケーションの初期化
※Dockerfileがディレクトリに移動 copilot init 対話形式で答えていく。 What would you like to name your application? [? for help] # アプリケーション名を指定 Which service type best represents your service's architecture? [Use arrows to move, type to filter, ? for more help] > Load Balanced Web Service ※ロードバランサ経由か Backend Service ※ロードバランサは不要(外部には公開しない) What do you want to name this Load Balanced Web Service? [? for help] →ロードバランサを指定した場合はロードバランサ名を Which Dockerfile would you like to use for XXXXX? [Use arrows to move, type to filter, ? for more help] →自動的にDockerfileを見つけてくれます All right, you're all set for local development. →yesを指定 Input an image tag value: →イメージのタグを聞かれるので適切な名前を
アプリケーション名、サービスタイプ(ロードバランサが必要かどうか)、Dockerfile の場所などを対話形式で設定します。
-
イメージのタグ指定
- Docker イメージに適用するタグ名を指定します。
-
デプロイ
- すべての設定が完了すると、アプリケーションが AWS 上にデプロイされます。デプロイが完了すると、生成された URL でアプリケーションにアクセスできます。
後片付け
テストで作成したリソースを削除する場合は、以下のコマンドを実行します。
copilot app delete
まとめ
AWS Copilot を使用することで、ECS に関連する多くの設定(ECR リポジトリ、ECS サービス/タスク定義、ロードバランサなど)が短時間で完了するので、AWS のインフラ設定にかかる時間を大幅に削減できるな、、と。テストなので課金されないように最後は削除を、、