1
0

More than 3 years have passed since last update.

DynamoDBをローカルで構築し、AWS CLIコマンドを使っていじるまで

Last updated at Posted at 2020-10-06

実施環境はWindowsのPC内にVagrantで立てたCentOSの仮想マシンです。

Javaがなかったので入れる

[root@localhost ~]# yum install java-1.8.0-openjdk
[root@localhost ~]# java -version
openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)

dynamodb-localをダウンロード

[vagrant@localhost ~]$ sudo su -
[root@localhost ~]# wget http://dynamodb-local.s3-website-us-west-2.amazonaws.com/dynamodb_local_latest.tar.gz

100%[========================================================================================================================================>] 16,884,788  3.26MB/s   in 4.9s   

2018-09-12 06:52:31 (3.26 MB/s) - ‘dynamodb_local_latest.tar.gz’ saved [16884788/16884788]

展開

[root@localhost ~]# tar zxvf dynamodb_local_latest.tar.gz

起動

[root@localhost ~]# java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
Initializing DynamoDB Local with the following configuration:
Port:   8000
InMemory:       false
DbPath: null
SharedDb:       true
shouldDelayTransientStatuses:   false
CorsParams:     *

停止するときはCtrt + cで

AWSCLIを入れる

公式ページを参考に
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/awscli-install-linux.html

まずpython-pipを使えるようにする

[root@localhost~]# yum install python-setuptools -y
[root@localhost~]# easy_install pip

AWS CLIをインストール

[root@localhost ~]# pip install awscli
[root@localhost ~]# aws --version
aws-cli/1.16.12 Python/2.7.5 Linux/3.10.0-514.26.2.el7.x86_64 botocore/1.12.2

AWS CLIを使ってDynamoDBをいじる

aws configureを設定

[root@localhost ~]# aws configure
AWS Access Key ID [None]: <アクセスキーID>
AWS Secret Access Key [None]: <シークレットアクセスキー>
Default region name [None]: ap-northeast-1 // なんとなく東京に
Default output format [None]: json

アクセスキーIDとシークレットアクセスキーは一度AWSのコンソールから発行してもらったものを設定したけど
ローカルで動かす場合はダミーでよかった。
むしろ本当のアクセスキーを設定したので「--endpoint-url http://192.168.33.11:8000」を付けなかった場合、
ローカルのDynamoDBではなくAWS上のDynamoDBにアクセスしてしまった( ´△`)

テーブル一覧

[root@localhost ~]# aws dynamodb list-tables --endpoint-url http://192.168.33.11:8000
{
    "TableNames": []
}

endpoint-urlは接続先ホスト名。
今回はVagrantで立てた仮想マシン内で実行するためVagrantfileに書いてあるIPアドレス(192.168.33.10)を指定した。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0