DynamoDB local

表題の件について。使うようになって開発環境としてローカルにあると嬉しい。

■ 環境

  • Java 1.8.0_101
  • awscli 1.15.50
  • AWS DynamoDB
  • macOS High Sierra

■ DynamoDB local

DynamoDB ローカル(ダウンロード可能バージョン)のセットアップ
https://docs.aws.amazon.com/ja_jp/amazondynamodb/latest/developerguide/DynamoDBLocal.html

上記のページからダウンロードする。東京リージョンの”tar.gz“をダウンロードした。

適切なディレクトリでダウンロードした”dynamodb_local_latest.tar.gz“を展開する。

$ tar zxf dynamodb_local_latest.tar.gz

展開して出て来た”README.txt“を参照し、下記の通り実行する。

$ java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar
Initializing DynamoDB Local with the following configuration:
Port:    8000
InMemory:    false
DbPath:    null
SharedDb:    false
shouldDelayTransientStatuses:    false
CorsParams:    *

実行できたようなので、`awscli`で繋いでみる。接続については下記を参照した。

ローカルエンドポイントの設定
https://docs.aws.amazon.com/ja_jp/amazondynamodb/latest/developerguide/DynamoDBLocal.Endpoint.html

$ aws dynamodb list-tables --endpoint-url http://localhost:8000
{
    "TableNames": []
}
$

テーブルが空っぽで返ってきた。デフォルトの接続先として設定してある東京リージョンには既存のテーブルがいくつか存在しているはずなので、確かにローカルにアクセスされているようだ。これでいろいろ実験が捗るかもしれない。

以上。