Skip to content

kritish-dhaubanjar/dynamodb-dashboard

Repository files navigation

icons8-database-administrator-96

DynamoDB Dashboard

A Web GUI Dashboard for local or remote DynamoDB, inspired from dynamodb-admin.

npm npm NPM

Docker Pulls Docker Image Size (tag)

dynamodb-dashboard Builder

Installation:

Install application globally:

npm install --global dynamodb-dashboard

Start dynamodb-dashboard instance:

dynamodb-dashboard start
Options
  • -d, --debug : show log output of running application (default: false)
  • -o, --open : open http://<host>:<port>/dynamodb (default: false)
  • -p, --port <port> : port to run app (default: 4567)
  • -h, --host <host> : host to run app (default: 127.0.0.1)

Setting Environment variables

Currently, following environment variables are supported, with default values:

  • AWS_REGION (default: us-west-2)
  • AWS_ENDPOINT (default: http://127.0.0.1:8000)
  • AWS_ACCESS_KEY_ID (default: fakeAccessKeyId)
  • AWS_SECRET_ACCESS_KEY (default: fakeSecretAccessKey)
  • AWS_SESSION_TOKEN (optional)

To configure, set the AWS environment variables in the terminal session before launching dynamodb-dashboard, example in .bashrc file.

Development Setup

  1. Setup Vue.js App
  2. Setup Node Express Server

OR

$ git clone https://github.com/kritish-dhaubanjar/dynamodb-dashboard.git
$ cd dynamodb-dashboard
$ make watch

Docker

Dockerfile

1. Build Docker image & run a container (from source & Dockerfile)

a. Clone Repository

$ git clone https://github.com/kritish-dhaubanjar/dynamodb-dashboard.git
$ cd dynamodb-dashboard

b. Build Docker Image

$ docker build . -t dynamodb-dashboard:local

Build Arguments:

  • PORT_ARG (default: 4567)
  • HOST_ARG (default: 0.0.0.0)
  • PREFIX_ARG (default: dynamodb, prefix of route URIs)

c. Run Docker Container

$ docker run -p 8080:4567 dynamodb-dashboard:local

Environment Variables:

  • AWS_REGION (default: us-west-2)
  • AWS_ENDPOINT (default: http://127.0.0.1:8000)
  • AWS_ACCESS_KEY_ID (default: fakeAccessKeyId)
  • AWS_SECRET_ACCESS_KEY (default: fakeSecretAccessKey)
  • AWS_SESSION_TOKEN (optional)

NOTE: For dynamodb running in the host machine, use flag --network=host for running dynamodb-dashboard container.

2. Run a container (from Docker Hub)

$ docker pull kritishdhaubanjar/dynamodb-dashboard:latest
$ docker run -p 8080:4567 kritishdhaubanjar/dynamodb-dashboard:latest

Environment Variables:

  • AWS_REGION (default: us-west-2)
  • AWS_ENDPOINT (default: http://127.0.0.1:8000)
  • AWS_ACCESS_KEY_ID (default: fakeAccessKeyId)
  • AWS_SECRET_ACCESS_KEY (default: fakeSecretAccessKey)
  • AWS_SESSION_TOKEN (optional)

NOTE: For dynamodb running in the host machine, use flag --network=host for running dynamodb-dashboard container.

docker-compose

1. Build Docker image & run a container (from docker-compose.build.yml)

dynamoDB image (from docker hub) + dynamodb-dashboard image (built from source)

a. Clone Repository

$ git clone https://github.com/kritish-dhaubanjar/dynamodb-dashboard.git
$ cd dynamodb-dashboard

b. Build & Run Docker Image

$ docker-compose -f docker-compose.build.yml up

2. Run a container (from docker-compose.yml)

dynamoDB image (from docker hub) + dynamodb-dashboard image (from docker hub)

$ docker-compose up

3. Run a container (from docker-compose.host.yml) using host networking

dynamoDB (host network) + dynamodb-dashboard image (from docker hub)

$ docker-compose -f docker-compose.host.yml up

Preview:

dynamodb-dashboard

image

Demo:

2022-09-24_22-28-32.mp4

Contributors ✨

Thanks goes to these wonderful people:


Bimochan Shrestha

📖

Bipin Manandhar


Nihal Maskey


Biplap Bhattarai

License

Distributed under the MIT License. See LICENSE for more information.