あれ
2025/2/1 22:29:00
import * as cdk from 'aws-cdk-lib';
import { Construct } from 'constructs';
import * as ec2 from "aws-cdk-lib/aws-ec2";
import * as ecs from "aws-cdk-lib/aws-ecs";
import * as ecs_patterns from "aws-cdk-lib/aws-ecs-patterns";
export class CdkStack extends cdk.Stack {
constructor(scope: Construct, id: string, props?: cdk.StackProps) {
super(scope, id, props);
const vpc = ec2.Vpc.fromLookup(this, "vpc", {
vpcId: "vpc-#############"
})
const cluster = ecs.Cluster.fromClusterAttributes(this, "ecs-cluster", {
"clusterName": "hoge-cluster",
"vpc": vpc,
});
// Create a load-balanced Fargate service and make it public
new ecs_patterns.ApplicationLoadBalancedFargateService(this, "fargate-service", {
cluster: cluster, // Required
cpu: 256, // Default is 256
memoryLimitMiB: 512, // Default is 512
desiredCount: 1, // Default is 1
taskImageOptions: { image: ecs.ContainerImage.fromAsset("####") },
publicLoadBalancer: true, // Default is true
assignPublicIp: true,
});
}
}