AWS CDK(Cloud Development Kit)は、インフラストラクチャをコードで管理するためのツールです。
CDKを使用することで、AWSリソースを特定のプログラミング言語で定義し、構築していくことができます。
本記事では、「Dockerを使って、CDKプロジェクトを作成する」最初の1歩を、実際に手を動かしながら身につけていきましょう!
本記事を通して身につくスキル
本記事では、問題を通して、下記のスキルを身につけることができます。
- 簡単なDockerfileの作成
- Dockerコンテナのビルド/起動/接続
- CDKプロジェクトの作成
前提
- 作業端末上のプロジェクトディレクトリに「aurora-cdk」ディレクトリを作成してください。
問題
要件を満たす、Dockerfileを作成してください。
1で作成したコンテナをビルドした後、コンテナに接続してください。
CDKプロジェクトを作成してください。
解答
(解答)要件を満たす、Dockerfileを作成してください。
FROM node:20.15.1-slim
RUN npm install -g typescript aws-cdk
WORKDIR /aurora-cdk
(解答)1で作成したコンテナをビルドした後、コンテナに接続してください。
タグ名「cdk-ts」を付与して、Dockerイメージをビルドします。
$ docker build -t cdk-ts .
次は、ビルドしたDockerイメージからコンテナを起動させます。
$ docker run --rm -v ./aurora-cdk:/aurora-cdk -it cdk-ts bash
runコマンドに使用した、各オプションを解説します。
オプション | 解説 |
---|---|
–rm | コンテナを停止させると、自動的にコンテナが削除されるオプションです。一時的なコンテナを起動させたい場合に有効です。 今回は、CDKプロジェクトを作成するための一時的なコンテナを作成したいので、このオプションを利用しました。 |
-v [ホストのパス]:[コンテナのパス] | 「ホストのパス」で指定されたディレクトリを「コンテナのパス」にマウントします。(=指定されたディレクトリがホストとコンテナ間で同期することが可能になります) |
-it | シェルを起動させ、コンテナ内に接続するためのオプションです。(本来のオプションの説明とは少し異なりますが、今回はこの捉え方で大丈夫です。) |
なお、「cdk-ts」は起動させるDockerイメージ名、「bash」はコンテナ内で起動させるコマンドになります。
(解答)CDKプロジェクトを作成してください。
/aurora-cdkディレクトリ内で、cdk initコマンドを実行してCDKプロジェクトを作成します。
$ pwd
/aurora-cdk
$ cdk init app --language typescript
今回はCDKアプリケーションを作成するため、テンプレートのタイプに「app」を指定します。 他にもライブラリやサンプルアプリケーションなどもあるので、気になる方は以下のリンクを参照してください。
cdk init – AWS Cloud Development Kit (AWS CDK) v2
おわりに
お疲れ様でした。以上で、本記事は終了となります。
他にも問題を用意していくので是非ご覧ください。