AWS CDKでAPI Gatewayをデプロイする
「AWS CDKでLambda(node.js)をデプロイする」の続きです。
lib配下のts修正
lib配下のtsファイルを編集します。import文追加とadd start ~ add endまでです。
import { Stack, StackProps } from 'aws-cdk-lib';
import { Construct } from 'constructs';
import * as lambda from 'aws-cdk-lib/aws-lambda';
import * as apigw from 'aws-cdk-lib/aws-apigateway'; // add
export class Sample001Stack extends Stack {
constructor(scope: Construct, id: string, props?: StackProps) {
super(scope, id, props);
const index = new lambda.Function(this, 'IndexHandler', {
runtime: lambda.Runtime.NODEJS_16_X, // node.js v16
code: lambda.Code.fromAsset('lambda'), // lambdaディレクトリ
handler: 'index.handler' // index.jsにしたのでindex
})
// add start
new apigw.LambdaRestApi(this, 'Endpoint', { // このEndpoinが名前になる
handler: index
});
// add end
}
}
これで保存します。
cdk deploy
デプロイします。
cdk deploy
これでstackとapigatewayがデプロイされます。
curlでテストします。
curl -X GET https://62gmujt0gg.execute-api.ap-northeast-1.amazonaws.com/prod/ Hello, CDK! You've hit /
OKです。
最後にdestroyでAPI Gateway,Lambdaを削除します。
cdk destroy
参考サイト
Workshop Studio
Discover and participate in AWS workshops and GameDays

KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES20xx),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^


コメント