翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
コンピュータ上で DynamoDB をローカルでデプロイする
重要
DynamoDB ローカル jar は、 AWS CloudFrontこちらで参照されているディストリビューションリンクからダウンロードできます。2025 年 1 月 1 日以降、古い S3 ディストリビューションバケットはアクティブではなくなり、DynamoDB CloudFront ローカルはディストリビューションリンクを通じてのみ配布されます。
DynamoDB ローカルには、DynamoDB ローカル v2.x (現行) と DynamoDB ローカル v1.x (レガシー) の 2 つのメジャーバージョンがあります。バージョン 2.x (現行) は Java ランタイム環境の最新バージョンをサポートし、Maven プロジェクトの jakarta.* 名前空間と互換性があるため、できる限りバージョン 2.x (最新) を使用してください。DynamoDB ローカル v1.x は、2025 年 1 月 1 日に標準サポートが終了します。この日を過ぎると、v1.x は更新やバグ修正を受けられなくなります。 |
注記
DynamoDB local の AWS_ACCESS_KEY_ID
には、文字 (A~Z、a~z) と数字 (0~9) のみを使用できます。
これらのステップに従って DynamoDB をコンピュータにセットアップして実行します。
コンピュータに DynamoDB をセットアップするには
-
次のいずれかの場所から DynamoDB をローカルに無料でダウンロードします。
ダウンロードリンク チェックサム 重要
DynamoDB v2.3.0 以降をコンピューターで実行するには、Java ランタイム環境 (JRE) バージョン 17.x 以降が必要です。アプリケーションは、以前のバージョンの JRE では動作しません。
-
アーカイブをダウンロードしたら、内容を抽出し、抽出されたディレクトリを任意の場所にコピーします。
-
コンピュータで 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
-
プログラムまたは AWS Command Line Interface (AWS CLI) を介して DynamoDB にアクセスする前に、アプリケーションで認証が有効になるように認証情報を設定する必要があります。以下の例に示されているように、ダウンロード可能な DynamoDB には、認証情報が必要です。
AWS Access Key ID: "fakeMyKeyId" AWS Secret Access Key: "fakeSecretAccessKey" Default Region Name: "fakeRegion"
aws configure
の AWS CLI コマンドを使用して、認証情報を設定できます。詳細については、「」を参照してくださいAWS CLIの使用 -
アプリケーションの書き込みを開始します。を使用してローカルで実行されている DynamoDB にアクセスするには AWS CLI、パラメータを使用します。
--endpoint-url
たとえば、次のコマンドを使用して、DynamoDB テーブルを一覧表示します。aws dynamodb list-tables --endpoint-url http://localhost:8000
Amazon DynamoDB のダウンロード可能バージョンは、Docker イメージとして入手できます。詳細については、「dynamodb-local
java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -version
AWS Serverless Application Model (AWS SAM) 上に構築された REST アプリケーションの一部として DynamoDB ローカルを使用する例については、「注文管理用の SAM DynamoDB アプリケーション
DynamoDB local のコンテナも使用するマルチコンテナアプリケーションを実行する場合は、Docker Compose を使用して、アプリケーション内のすべてのサービス (DynamoDB local を含む) を定義して実行します。
Docker Compose を使用して DynamoDB local をインストールして実行するには
-
Docker Desktop
をダウンロードしてインストールします。 -
以下のコードをファイルにコピーし、
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: amazon/aws-cli 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
コンテナを作成します。スクリプトは、 AWS CLI を使用してapp-node
コンテナに接続し、アカウントとテーブルの制限を記述するコマンドを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 AWS AWS スクリプトではアクセスキーとシークレットキーを指定する必要がありますが、DynamoDB AWS ローカルにアクセスするための有効なキーである必要はありません。
-
次のコマンドラインのコマンドを実行します。
docker-compose up
Amazon DynamoDB をアプリケーション内で依存関係として使用するには、これらのステップに従います。
DynamoDB を Apache Maven リポジトリとしてデプロイするには
-
Apache Maven をダウンロードし、インストールします。詳細については、「Apache Maven のダウンロード
」および「Apache Maven のインストール 」を参照してください。 -
DynamoDB の Maven リポジトリをアプリケーションのプロジェクトオブジェクトモデル (POM) ファイルに追加します。
<!--Dependency:--> <dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>DynamoDBLocal</artifactId> <version>2.3.0</version> </dependency> </dependencies>
Spring Boot 3 や Spring Framework 6 で使用するテンプレートの例:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId> <artifactId>SpringMavenDynamoDB</artifactId> <version>1.0-SNAPSHOT</version> <properties> <spring-boot.version>3.0.1</spring-boot.version> <maven.compiler.source>17</maven.compiler.source> <maven.compiler.target>17</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.0.1</version> </parent> <dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>DynamoDBLocal</artifactId> <version>2.3.0</version> </dependency> <!-- Spring Boot --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <version>${spring-boot.version}</version> </dependency> <!-- Spring Web --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>${spring-boot.version}</version> </dependency> <!-- Spring Data JPA --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> <version>${spring-boot.version}</version> </dependency> <!-- Other Spring dependencies --> <!-- Replace the version numbers with the desired version --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>6.0.0</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>6.0.0</version> </dependency> <!-- Add other Spring dependencies as needed --> <!-- Add any other dependencies your project requires --> </dependencies> </project>
注記
Maven 中央リポジトリ
の URL を使用することもできます。