はじめに
WSLとはWindows Subsystem for Linuxの略でWindows内でLinuxディストリビューションの実行を行うためのツールです。
WSL2はWSLの進化版で大きな変更点としてDockerの実行が可能になっております。
筆者はWindows環境ですが開発環境のセットアップがコマンドで行いやすいため、最終的にはWindows環境よりセットアップが楽になると思います。
したがって今回はWSL2を導入後、CDKをインストールすることとします。
https://docs.microsoft.com/ja-jp/windows/wsl/about
CDK セットアップ手順
WSL2インストール
下記インストールコマンドをPowerShellにて実行します。
OSバージョンが古い場合は手動手順を使用してWSL2をインストールします。
ディストリビューションは自動インストール時にデフォルトのUbuntuとします。
したがって後続のインストールコマンドもUbuntuに準ずるものとなります。
https://docs.microsoft.com/ja-jp/windows/wsl/install-manual
wsl --install
パッケージのアップデート&インストール
CDKで使用するvenvとpip、AWSCLIインストール時に必要なunzipをここでインストールします。
apt-get -y update
apt-get -y upgrade
apt -y install python3.8-venv \
python3-pip \
unzip
npmのインストール
CDKをインストールする際にnpmを利用するため、nvmを使用して最新バージョンのnode.jsとnpmをインストールします。
nvmのインストールスクリプトをcurlで読み込み実行します。
インストール実行後、nvmのパスをプロファイルで読み込んでから最新のnode.jsとnpmをインストールします。
curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash
source ~/.profile
nvm install --lts
AWS CLIのインストール
AWS CLIのインストールは公式ページに準じてインストールします。
インストールファイルは削除します。また別途AWSのプロファイルも設定します。
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
rm ./awscliv2.zip
rm -rf ./aws
Dockerのインストール
CDKのみであれば必要でありませんが、CDKでDockerのBundlingを使ってLambdaをデプロイする際に必要があるため、今回はインストールします。公式ページに記載の通りインストールを行います。
流れとしては依存関係のパッケージをインストール→DockerのGPG公開鍵のインストール
→repository (stable) を追加する→dockerのインストールです。
apt-get -y install \
ca-certificates \
curl \
gnupg \
lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get -y update
apt-get -y install docker-ce docker-ce-cli containerd.io
service docker start
Dockerの自動起動を追加
自動起動をWSL2では設定できないため、下記をプロファイルに設定します。
vi ~/.bashrc
echo $(service docker status | awk '{print $4}')
if test $(service docker status | awk '{print $4}') = 'not'; then
sudo /usr/sbin/service docker start
fi
CDKのインストール
最後に下記コマンドでCDKのインストールを行います。
npm install -g aws-cdk
最後に
事前に準備するものが多いですが、これにてCDKに関するインストールは完了です。
インストールに手間はかかりましたが、一度CDKを使うとCLIやCloudFormationの管理に戻れなくなると思いますので、是非ここからCDKを体験してほしいです。
次回はプロジェクトの作成とcdkコマンドについて説明したいと思います。
参考文献
「Node Version Manager – Installing and Updating」
https://github.com/nvm-sh/nvm#installing-and-updating
「Installing or updating the latest version of the AWS CLI – Linux」
https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html#cliv2-linux-install
「Install Docker Engine on Ubuntu – Installation methods」
https://docs.docker.com/engine/install/ubuntu/
@ko-zi.2020.「wsl2でDocker自動起動設定」
https://qiita.com/ko-zi/items/949d358163bbbad5a91e