ロゴテキスト ロゴ

    DynamoDB Localの開発を便利にするdynamodb-adminを導入する

    DynamoDB Localの開発を便利にするdynamodb-adminを導入する

    Serverless FrameworkのプロジェクトにDynamoDB Localを導入する記事を書きました。





    DynamoDB Localは単体でもテーブルの確認、操作、クエリの発行も出来ますが、

    SequelのようなGUIで簡単操作は出来ません。


    例えばテーブルの内容を確認する際も以下のようなコードを書く必要があります。

    var params = {
        TableName: 'users',
    };
    dynamodb.scan(params, function(err, data) {
        if (err) ppJson(err);
        else ppJson(data);
    });
    DynamoDB LocalのページはGUIのような簡単な操作が出来ない



    そこでDynamoDB Localの確認・操作でおすすめなのが、dynamodb-adminというパッケージ。

    dynamodb-adminを導入する事でDynamoDB Localの確認が簡単に出来るようになる

    上記の画像のようにGUIベースで、DynamoDB Localの確認・操作が簡単に出来るようになります!



    例えば、テーブルにデータを追加する、といった事も簡単に出来ます。

    便利ですね。




    ここではServerless Frameworkのプロジェクトの中に導入しますが、

    それ以外の環境でもDynamoDB Localを確認する、という点では同じように使えます。

    検証した環境

    1 serverless-dynamodb-local 0.2.39
    2 dynamodb-admin 4.0.0

    dynamodb-adminを導入する

    パッケージを追加

    $ yarn add -D dynamodb-admin

    dynamodb-adminでDynamoDB Localを確認する

    確認する上でまずDynamoDB Localを立ち上げておく必要があります。

    # DynamoDB Localを立ち上げておく
    $ npx sls dynamodb start
    Dynamodb Local Started, Visit: http://localhost:8000/shell
    2021-01-16 23:58:00.489:INFO::main: Logging initialized @550ms to org.eclipse.jetty.util.log.StdErrLog
    Serverless: DynamoDB - created table users
    Seed running complete for table: users


    あとはdynamodb-adminを立ち上げればOK!

    立ち上げるのもdynamodb-adminコマンドを実行すればいいだけ、簡単ですね。

    $ npx dynamodb-admin
    DYNAMO_ENDPOINT is not defined (using default of http://localhost:8000)
    database endpoint: 	http://localhost:8000
    ・・・
     
    dynamodb-admin listening on http://localhost:8001 (alternatively http://0.0.0.0:8001) 

    ↑で表示されているhttp://localhost:8001にアクセスすると

    dynamodb-adminが表示出来るようになった

    dynamodb-adminを使って操作が出来るようになりました!

    dynamodb-adminコマンドを使う上で

    DynamoDB Localのポート番号を変えている場合

    DynamoDB Localはデフォルトで8000番で起動します。


    dynamodb-adminもその前提で動いていて、もしDynamoDB Localのポート番号を変更している場合は環境変数の値を変える必要があります。

    $ DYNAMO_ENDPOINT=http://localhost:8080 dynamodb-admin

    公式のGitHubではwindowsの場合についても記載されています。

    aaronshaf/dynamodb-admin: GUI for DynamoDB Local or dynalite



    dynamodb-adminをコマンド実行と同時にブラウザで起動する

    オプション1つで出来るので設定するのがおすすめです!!


    dynamodb-adminコマンド実行時に -o を付けるだけでOKです。

    # コマンド実行と同時にブラウザでdynamodb-adminのページを開く
    $ npx dynamodb-admin -o
    プロフィールの背景画像 プロフィール画像
    Yuki Takara
    都内でフリーランスのエンジニアをやってます。フロントとアプリ開発メインに幅広くやってます。