AWS CDK ドキュメント : https://docs.aws.amazon.com/cdk/api/v2/docs/aws-construct-library.html npm version : 10.2.3 nodenv version : 18.19.0 #nodenv導入 github:https://github.com/nodenv/nodenv 1. nodenvをクローンする ``` git clone https://github.com/nodenv/nodenv.git ~/.nodenv ``` インストール時間を短縮するためダイナミックバッシュでコンパイルする(失敗してもインストールできる) ``` cd ~/.nodenv && src/configure && make -C src ``` 2. nodenvを`PATH`に追加する ``` echo 'export PATH="$HOME/.nodenv/bin:$PATH"' >> ~/.bashrc ``` 現在のシェルにbash適用する ``` source ~/.bashrc ``` 3. nodenvをshellにセットアップする ``` ~/.nodenv/bin/nodenv init ``` 表示されたコマンドで実行する **プラットフォームによってコマンド違うので下記のコマンドを実行しない** ``` echo 'eval "$(nodenv init - bash)"' >> ~/.bashrc source ~/.bashrc ``` 4. nodenvインストール確認 ``` curl -fsSL https://github.com/nodenv/nodenv-installer/raw/main/bin/nodenv-doctor | bash ``` 下記の画面表示されたら完了 ``` Checking for `nodenv' in PATH: /home/nik/.nodenv/bin/nodenv Checking for nodenv shims in PATH: OK Checking `nodenv install' support: not found Unless you plan to add Node versions manually, you should install node-build. Please refer to https://github.com/nodenv/node-build#installation Counting installed Node versions: none There aren't any Node versions installed under `/home/nik/.nodenv/versions'. You can install Node versions like so: nodenv install Auditing installed plugins: OK ``` ##node-buildインストール(オプション) *nodenv install使用するに最適化されるプラグイン* github: https://github.com/nodenv/node-build ``` mkdir -p "$(nodenv root)"/plugins git clone https://github.com/nodenv/node-build.git "$(nodenv root)"/plugins/node-build ``` ##node version 18.19.0インストール ``` nodenv install 18.19.0 nodenv global 18.19.0 ``` nodeバージョン確認 ``` node --version npm --version npx --version ``` # AWSプロファイル設定 ``` aws configure sso --profile <プロファイル名> ``` コマンドからユーザー情報が保存できる ``` SSO session name (Recommended): its-pharma-core-dev SSO start URL [None]: https://d-95675820f8.awsapps.com/start/# SSO region [None]: ap-northeast-1 SSO registration scopes [sso:account:access]: CLI default client Region [None]: ap-northeast-1 CLI default output format [None]: json ``` ### AWSアカウント切り替え ``` export AWS_PROFILE=medaca ``` ### アカウントSSO(シングルサインオン)再認証 ``` aws sso login --profile <プロファイル名> ``` ### Alias設定 (WSLでコマンド省略): homeダイレクトリー変更 ``` cd ~ ``` .bashrcにaliasにしたいコマンド書く ``` vi .bashrc ``` 例: ``` alias medaca='export AWS_PROFILE=medaca' ``` この場合は`export AWS_PROFILE=medaca`コマンドが`medaca`に省略できる 最後にsourceで現在のshellに読み込み ``` source ~/.bashrc ``` ## 便利なサイト AWSワークショップ:https://cdkworkshop.com/20-typescript/20-create-project/100-cdk-init.html AWSサンプルCDKプロジェクト:https://github.com/aws-samples/aws-cdk-examples/tree/main AWS CDKベストプラクティス:https://docs.aws.amazon.com/cdk/v2/guide/best-practices.html https://docs.aws.amazon.com/pdfs/prescriptive-guidance/latest/best-practices-cdk-typescript-iac/best-practices-cdk-typescript-iac.pdf#introduction ### 命名規則: camelCase:変数、関数 PascalCase:クラス、インターフェイス ## 脆弱性ツール cfn-nag:https://github.com/stelligent/cfn_nag cdk-nag