Distribuzione di DynamoDB in locale sul computer
- Download locally
-
DynamoDB Local viene fornito come file
.jar
eseguibile. L'applicazione è eseguibile su Windows, Linux, macOS e altre piattaforme compatibili con Java.Completare la procedura riportata di seguito per configurare ed eseguire DynamoDB sul proprio computer.
Nota Per l'uso su processori Apple M1 e più recenti è necessario DynamoDB Local v1.20 e versioni successive.
Come configurare DynamoDB sul computer
Scaricare DynamoDB gratuitamente da una delle seguenti posizioni.
Regione Collegamenti per il download Checksum Asia Pacific (Mumbai) Region
Asia Pacific (Singapore) Region
Asia Pacific (Tokyo) Region
Europe (Frankfurt) Region
South America (São Paulo) Region
US West (Oregon) Region
DynamoDB è disponibile anche come parte di AWS Toolkit for Eclipse. Per ulteriori informazioni, consulta AWS Toolkit for Eclipse
. Importante Per eseguire DynamoDB sul computer, è necessario disporre della versione 8.x o successiva di Java Runtime Environment (JRE). L'applicazione non verrà eseguita nelle versioni di JRE precedenti.
-
Dopo aver scaricato l'archivio, estrai i contenuti e copia la directory estratta in una ubicazione a scelta.
Per avviare DynamoDB sul computer, aprire una finestra del prompt dei comandi, spostarsi nella directory in cui è stato estratto
DynamoDBLocal.jar
, quindi immettere il comando seguente.java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
Nota Se stai utilizzando Windows PowerShell, accertati di includere il nome parametro o il nome e il valore completi come:
java -D"java.library.path=./DynamoDBLocal_lib" -jar DynamoDBLocal.jar
DynamoDB esegue le richieste in arrivo fino al suo arresto. Per arrestare DynamoDB, digitare Ctrl+C al prompt dei comandi.
DynamoDB utilizza la porta 8000 per impostazione predefinita. Se la porta 8000 non è disponibile, il comando genera un'eccezione. Per un elenco completo delle opzioni di runtime di DynamoDB, incluso
-port
, immettere il comando seguente.java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -help
-
Prima di poter accedere a AWS Command Line Interface in modo programmatico o tramite (AWS CLI), è necessario configurare le credenziali per abilitare l'autorizzazione per le applicazioni. Perché possa funzionare, la versione scaricabile di DynamoDB richiede le credenziali, come mostrato nell'esempio seguente.
AWS Access Key ID: "fakeMyKeyId" AWS Secret Access Key: "fakeSecretAccessKey"
È possibile utilizzare il comando
aws configure
di AWS CLI per impostare le credenziali. Per ulteriori informazioni, consulta Tramite AWS CLI. -
Inizia a scrivere le applicazioni. Per accedere a DynamoDB eseguito in locale con la AWS CLI, utilizza il parametro
--endpoint-url
. Ad esempio, per elencare le tabelle DynamoDB utilizzare il seguente comando:aws dynamodb list-tables --endpoint-url http://localhost:8000
- Docker
-
La versione scaricabile di Amazon DynamoDB è disponibile come parte dell'immagine Docker. Per ulteriori informazioni, consulta dynamodb-local
. Per un esempio di utilizzo di DynamoDB locale come parte di un'applicazione REST basata su un AWS Serverless Application Model (AWS SAM), consulta Applicazione DynamoDB SAM per la gestione degli ordini
. Questa applicazione di esempio mostra come utilizzare DynamoDB locale per i test. Se desideri eseguire un'applicazione multi-container che utilizza anche il container DynamoDB Local, utilizza Docker Compose per definire ed eseguire tutti i servizi nell'applicazione, incluso DynamoDB Local.
Per installare ed eseguire DynamoDB in locale con Docker Compose:
-
Scarica e installa Docker Desktop
. -
Copiare il codice seguente in un file e salvarlo con nome
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
Se vuoi che l'applicazione e DynamoDB locale si trovino in container separati, utilizza il file yaml seguente.
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: banst/awscli 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
Lo script docker-compose.yml crea un container
app-node
e un containerdynamodb-local
. Lo script esegue un comando nel containerapp-node
che utilizza la AWS CLI per connettersi al containerdynamodb-local
e descrive i limiti di account e tabelle.Per utilizzarlo con la propria immagine dell'applicazione, sostituire il valore
image
nell'esempio seguente con quello dell'applicazione: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'Nota Gli script YAML richiedono di specificare una chiave di accesso AWS e una chiave segreta AWS, ma non è necessario disporre di chiavi AWS valide per l'accesso a DynamoDB locale.
-
Emettere il seguente comando dalla riga di comando:
docker-compose up
-
- Apache Maven
-
Completare la seguente procedura per utilizzare Amazon DynamoDB nell'applicazione come dipendenza.
Come distribuire DynamoDB come repository Apache Maven
-
Scarica e installa Apache Maven. Per ulteriori informazioni, consulta le pagine relative al download di Apache Maven
e all'installazione di Apache Maven . -
Aggiungi il repository Maven DynamoDB al file POM (Project Object Model) dell'applicazione:
<!--Dependency:--> <dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>DynamoDBLocal</artifactId> <version>[1.12,2.0)</version> </dependency> </dependencies> <!--Custom repository:--> <repositories> <repository> <id>dynamodb-local-oregon</id> <name>DynamoDB Local Release Repository</name> <url>https://s3-us-west-2.amazonaws.com/dynamodb-local/release</url> </repository> </repositories>
Nota È possibile utilizzare anche uno degli URL di repository seguenti, a seconda della regione AWS.
id Repository URL (URL repository) dynamodb-local-mumbai
https://s3.ap-south-1.amazonaws.com/dynamodb-local-mumbai/release
dynamodb-local-singapore
https://s3.ap-southeast-1.amazonaws.com/dynamodb-local-singapore/release
dynamodb-local-tokyo
https://s3.ap-northeast-1.amazonaws.com/dynamodb-local-tokyo/release
dynamodb-local-frankfurt
https://s3.eu-central-1.amazonaws.com/dynamodb-local-frankfurt/release
dinamodb-locale-sao-paulo
https://s3.sa-east-1.amazonaws.com/dynamodb-local-sao-paulo/release
-