在计算机上本地部署 DynamoDB - Amazon DynamoDB
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

在计算机上本地部署 DynamoDB

Download Locally

Amazon DynamoDB 的可下载版本作为可执行 .jar 文件提供。此应用程序将在 Windows、Linux、macOS 和其他支持 Java 的平台上运行。

按照以下步骤操作,在您的计算机上设置并运行 DynamoDB。

在您的计算机上设置 DynamoDB

  1. 从以下位置之一免费下载 DynamoDB。

    区域 下载链接 校验和

    亚太(孟买)区域

    .tar.gz | .zip

    .tar.gz.sha256 | .zip.sha256

    亚太区域(新加坡)

    .tar.gz | .zip

    .tar.gz.sha256 | .zip.sha256

    亚太区域(东京)

    .tar.gz | .zip

    .tar.gz.sha256 | .zip.sha256

    欧洲(法兰克福)区域

    .tar.gz | .zip

    .tar.gz.sha256 | .zip.sha256

    南美洲(圣保罗)区域

    .tar.gz | .zip

    .tar.gz.sha256 | .zip.sha256

    美国西部(俄勒冈)区域

    .tar.gz | .zip

    .tar.gz.sha256 | .zip.sha256

    DynamoDB 还会作为 Amazon Toolkit for Eclipse 的一部分提供。有关更多信息,请参阅。Amazon Toolkit for Eclipse

    重要

    要在您的计算机上运行 DynamoDB,您必须具有 Java 运行时环境 (JRE) 版本 8.x 或更高版本。此应用程序无法在早期的 JRE 版本上运行。

  2. 下载存档后,提取内容,并将提取的目录复制到您选择的某个位置。

  3. 要在计算机上启动 DynamoDB,请打开命令提示符窗口,导航到您提取 DynamoDBLocal.jar 的目录,并输入以下命令。

    java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
    注意

    如果您使用的是 Windows PowerShell,请务必将参数名称或整个名称和值括起,如下所示:

    java -D"java.library.path=./DynamoDBLocal_lib" -jar DynamoDBLocal.jar

    DynamoDB 将处理传入请求,直到您将其停止为止。要停止 DynamoDB,请在命令提示符处按 Ctrl+C。

    默认情况下,DynamoDB 使用端口 8000。如果端口 8000 不可用,此命令将引发异常。有关 DynamoDB 运行时选项的完整列表(包括 -port),请输入此命令。

    java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -help

  4. 您必须先配置凭证以为您的应用程序启用授权,然后才能以编程方式或通过 Amazon Command Line Interface (Amazon CLI) 访问 DynamoDB。可下载的 DynamoDB 需要具有任何凭证才能工作,如以下示例所示。

    AWS Access Key ID: "fakeMyKeyId" AWS Secret Access Key: "fakeSecretAccessKey"

    您可以使用 aws configure 的 Amazon CLI 命令设置凭证。有关更多信息,请参阅 使用 Amazon CLI

  5. 开始编写应用程序。要使用 Amazon CLI 访问本地运行的 DynamoDB,请使用 --endpoint-url 参数。例如,使用以下命令列出 DynamoDB 表。

    aws dynamodb list-tables --endpoint-url http://localhost:8000
Docker

Amazon DynamoDB 的可下载版本作为 Docker 映像的一部分提供。有关更多信息,请参阅 dynamodb-local

有关使用作为 Amazon Serverless Application Model (Amazon SAM) 上构建的 REST 应用程序的一部分的 DynamoDB Local 的示例,请参阅用于管理订单的 SAM DynamoDB 应用程序。此样本应用程序演示如何使用 DynamoDB Local 进行测试。

如果要运行也是使用 DynamoDB 本地容器的多容器应用程序,请使用 Docker Compose 来定义和运行应用程序中的所有服务,包括 DynamoDB Local。

使用 Docker Compose 安装和运行 DynamoDB Local:

  1. 下载并安装 Docker Desktop

  2. 将以下代码复制到文件中并将其保存为 docker-compose.yml

    version: '3.8' services: dynamodb-local: command: "-jar DynamoDBLocal.jar -sharedDb -dbPath ./data" image: "amazon/dynamodb-local:latest" container_name: dynamodb-local ports: - "8000:8000" volumes: - "./docker/dynamodb:/home/dynamodblocal/data" working_dir: /home/dynamodblocal

    如果您希望应用程序和 DynamoDB Local 位于单独的容器中,请使用以下 yaml 文件。

    version: '3.8' services: dynamodb-local: command: "-jar DynamoDBLocal.jar -sharedDb -dbPath ./data" image: "amazon/dynamodb-local:latest" container_name: dynamodb-local ports: - "8000:8000" volumes: - "./docker/dynamodb:/home/dynamodblocal/data" working_dir: /home/dynamodblocal app-node: depends_on: - dynamodb-local image: banst/awscli container_name: app-node ports: - "8080:8080" environment: AWS_ACCESS_KEY_ID: 'DUMMYIDEXAMPLE' AWS_SECRET_ACCESS_KEY: 'DUMMYEXAMPLEKEY' command: dynamodb describe-limits --endpoint-url http://dynamodb-local:8000 --region us-west-2

    此 docker-compose.yml 脚本将创建一个 app-node 容器和一个 dynamodb-local 容器。此脚本会在 app-node 容器中运行一个命令,该命令使用 Amazon CLI 连接到 dynamodb-local 容器,并描述账户和表限制。

    要与您自己的应用程序映像一起使用,请将以下示例中的 image 值替换为应用程序的相应值:

    version: '3.8' services: dynamodb-local: command: "-jar DynamoDBLocal.jar -sharedDb -dbPath ./data" image: "amazon/dynamodb-local:latest" container_name: dynamodb-local ports: - "8000:8000" volumes: - "./docker/dynamodb:/home/dynamodblocal/data" working_dir: /home/dynamodblocal app-node: image: location-of-your-dynamodb-demo-app:latest container_name: app-node ports: - "8080:8080" depends_on: - "dynamodb-local" links: - "dynamodb-local" environment: AWS_ACCESS_KEY_ID: 'DUMMYIDEXAMPLE' AWS_SECRET_ACCESS_KEY: 'DUMMYEXAMPLEKEY' REGION: 'eu-west-1'
    注意

    YAML 脚本要求您指定 Amazon 访问密钥和 Amazon 私有密钥,但不一定是您访问 DynamoDB Local 的有效 Amazon 密钥。

  3. 运行以下命令行命令:

    docker-compose up
Apache Maven

按照以下步骤操作,在应用程序中将 Amazon DynamoDB 用作依赖项。

将 DynamoDB 部署为 Apache Maven 存储库

  1. 下载并安装 Apache Maven。有关更多信息,请参见下载 Apache Maven安装 Apache Maven

  2. 将 DynamoDB Maven 存储库添加到您的应用程序的项目对象模型 (POM) 文件。

    <!--Dependency:--> <dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>DynamoDBLocal</artifactId> <version>[1.12,2.0)</version> </dependency> </dependencies> <!--Custom repository:--> <repositories> <repository> <id>dynamodb-local-oregon</id> <name>DynamoDB Local Release Repository</name> <url>https://s3-us-west-2.amazonaws.com/dynamodb-local/release</url> </repository> </repositories>
    注意

    也可以根据您的 Amazon 区域使用下列存储库 URL 之一。

    id 存储库 URL

    dynamodb-local-mumbai

    https://s3.ap-south-1.amazonaws.com/dynamodb-local-mumbai/release

    dynamodb-local-singapore

    https://s3.ap-southeast-1.amazonaws.com/dynamodb-local-singapore/release

    dynamodb-local-tokyo

    https://s3.ap-northeast-1.amazonaws.com/dynamodb-local-tokyo/release

    dynamodb-local-frankfurt

    https://s3.eu-central-1.amazonaws.com/dynamodb-local-frankfurt/release

    dynamodb-local-sao-paulo

    https://s3.sa-east-1.amazonaws.com/dynamodb-local-sao-paulo/release