AWS CDK

AWS云开发工具包是一个在代码中定义云基础设施的框架。「The AWS Cloud Development Kit is a framework for defining cloud infrastructure in code」

Github星跟蹤圖

AWS Cloud Development Kit (AWS CDK)

Build Status
Gitter chat
NPM version
PyPI version
NuGet version
Maven Central

The AWS Cloud Development Kit (AWS CDK) is an open-source software development
framework to define cloud infrastructure in code and provision it through AWS CloudFormation.

It offers a high-level object-oriented abstraction to define AWS resources imperatively using
the power of modern programming languages. Using the CDK’s library of
infrastructure constructs, you can easily encapsulate AWS best practices in your
infrastructure definition and share it without worrying about boilerplate logic.

The CDK is available in the following languages:


Developer Guide, CDK Workshop, Getting Started, API Reference, Examples, Getting Help, RFCs

Developers use the CDK framework in one of the
supported programming languages to define reusable cloud components called constructs, which
are composed together into stacks, forming a "CDK app".

They then use the AWS CDK CLI to interact with their CDK app. The CLI allows developers to
synthesize artifacts such as AWS CloudFormation Templates, deploy stacks to development AWS accounts and "diff"
against a deployed stack to understand the impact of a code change.

The AWS Construct Library includes a module for each
AWS service with constructs that offer rich APIs that encapsulate the details of
how to use AWS. The AWS Construct Library aims to reduce the complexity and
glue-logic required when integrating various AWS services to achieve your goals
on AWS.

At a glance

Install or update the AWS CDK CLI from npm (requires Node.js ≥ 10.3.0):

$ npm i -g aws-cdk

(See Manual Installation for installing the CDK from a signed .zip file).

Initialize a project:

$ mkdir hello-cdk
$ cd hello-cdk
$ cdk init sample-app --language=typescript

This creates a sample project looking like this:

export class HelloCdkStack extends cdk.Stack {
  constructor(scope: cdk.App, id: string, props?: cdk.StackProps) {
    super(scope, id, props);

    const queue = new sqs.Queue(this, 'HelloCdkQueue', {
      visibilityTimeout: cdk.Duration.seconds(300)
    });

    const topic = new sns.Topic(this, 'HelloCdkTopic');

    topic.addSubscription(new subs.SqsSubscription(queue));
  }
}

Deploy this to your account:

$ cdk deploy

Use the cdk command-line toolkit to interact with your project:

  • cdk deploy: deploys your app into an AWS account
  • cdk synth: synthesizes an AWS CloudFormation template for your app
  • cdk diff: compares your app with the deployed stack

For a detailed walkthrough, see the tutorial in the AWS CDK Developer Guide.

Getting Help

Please use these community resources for getting help. We use the GitHub issues
for tracking bugs and feature requests.

  • Ask a question on Stack Overflow
    and tag it with aws-cdk
  • Come join the AWS CDK community on Gitter
  • Open a support ticket with AWS Support
  • If it turns out that you may have found a bug,
    please open an issue

Contributing

We welcome community contributions and pull requests. See
CONTRIBUTING for information on how to set up a development
environment and submit code.

License

The AWS CDK is distributed under the Apache License, Version 2.0.

See LICENSE and NOTICE for more information.

主要指標

概覽
名稱與所有者aws/aws-cdk
主編程語言TypeScript
編程語言Shell (語言數: 12)
平台
許可證Apache License 2.0
所有者活动
創建於2017-10-04 19:22:36
推送於2025-08-12 11:57:53
最后一次提交
發布數627
最新版本名稱v2.210.0 (發布於 )
第一版名稱v0.7.0-beta (發布於 )
用户参与
星數12.3k
關注者數227
派生數4.2k
提交數16.2k
已啟用問題?
問題數15843
打開的問題數2488
拉請求數14418
打開的拉請求數133
關閉的拉請求數3527
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?