Déploiement de DynamoDB localement sur votre ordinateur - Amazon DynamoDB

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Déploiement de DynamoDB localement sur votre ordinateur

Important

Le fichier jar local DynamoDB peut être téléchargé à partir de AWS CloudFront nos liens de distribution référencés ici. À compter du 1er janvier 2025, les anciens compartiments de distribution S3 ne seront plus actifs et DynamoDB local sera distribué CloudFront uniquement via des liens de distribution.

Deux versions principales de DynamoDB local sont disponibles : DynamoDB local v2.x (version actuelle) et DynamoDB local v1.x (ancienne version). Les clients doivent utiliser la version 2.x (actuelle) dans la mesure du possible, car elle prend en charge les dernières versions de l'environnement d'exécution Java et est compatible avec l'espace de noms jakarta.* du projet Maven. Le support standard de DynamoDB local v1.x prendra fin le 1er janvier 2025. Après cette date, la v1.x ne recevra plus de mises à jour ni de corrections de bogues.
Note

La variable d'environnement AWS_ACCESS_KEY_ID de DynamoDB local ne peut contenir que des lettres (A à Z, a à z) et des chiffres (0 à 9).

Suivez ces étapes pour configurer et exécuter DynamoDB sur votre ordinateur :

Pour configurer DynamoDB sur votre ordinateur
  1. Téléchargez DynamoDB local gratuitement depuis l'un des emplacements suivants.

    Télécharger les liens Totaux de contrôle

    .tar.gz | .zip

    .tar.gz.sha256|.zip.sha256

    Important

    Pour exécuter DynamoDB v2.3.0 ou version ultérieure sur votre ordinateur, vous devez disposer de la version 17.x ou ultérieure de Java Runtime Environment (JRE). L'application ne fonctionne pas sur les versions antérieures de JRE.

  2. Une fois que vous avez téléchargé l'archive, extrayez le contenu et copiez le répertoire extrait vers un emplacement de votre choix.

  3. Pour démarrer DynamoDB sur votre ordinateur, ouvrez une fenêtre d'invite de commande, accédez au répertoire où vous avez extrait DynamoDBLocal.jar, puis entrez la commande suivante.

    java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
    Note

    Si vous utilisez Windows PowerShell, veillez à inclure le nom du paramètre ou le nom complet et la valeur comme suit :

    java -D"java.library.path=./DynamoDBLocal_lib" -jar DynamoDBLocal.jar

    DynamoDB traite les demandes entrantes jusqu'à ce que vous l'arrêtiez. Pour arrêter DynamoDB, tapez Ctrl + C à l'invite de commande.

    DynamoDB utilise le port 8000 par défaut. Si le port 8000 n'est pas disponible, cette commande lève une exception. Pour obtenir la liste complète des options d'exécution de DynamoDB, y compris -port, entrez la commande suivante.

    java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -help

  4. Pour pouvoir accéder à DynamoDB par programme ou via l' AWS Command Line Interface (AWS CLI), vous devez configurer vos informations d'identification pour permettre l'autorisation de vos applications. La version téléchargeable de DynamoDB requiert des informations d'identification pour fonctionner, comme l'illustre l'exemple suivant.

    AWS Access Key ID: "fakeMyKeyId" AWS Secret Access Key: "fakeSecretAccessKey" Default Region Name: "fakeRegion"

    Vous pouvez utiliser la commande aws configure de AWS CLI pour configurer des informations d'identification. Pour de plus amples informations, veuillez consulter Utilisation de la AWS CLI.

  5. Vous pouvez commencer à écrire des applications. Pour accéder à DynamoDB s'exécutant localement avec AWS CLI le, utilisez le paramètre. --endpoint-url Par exemple, utilisez la commande suivante pour afficher la liste des tables DynamoDB.

    aws dynamodb list-tables --endpoint-url http://localhost:8000

La version téléchargeable d'Amazon DynamoDB est disponible sous la forme d'une image Docker. Pour plus d'informations, consultez dynamodb-local. Pour voir votre version locale actuelle de DynamoDB, entrez la commande suivante :

java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -version

Pour un exemple d'utilisation de DynamoDB local dans le cadre d'une application REST basée sur AWS SAM(), consultez AWS Serverless Application Model l'application SAM DynamoDB pour la gestion des commandes. Cet exemple d'application montre comment utiliser DynamoDB Local à des fins de test.

Si vous souhaitez exécuter une application à conteneurs multiples qui utilise également le conteneur local DynamoDB, utilisez Docker Compose pour définir et exécuter tous les services de votre application, y compris DynamoDB local.

Pour installer et exécuter DynamoDB Local avec Docker Compose :
  1. Téléchargez et installez Docker Desktop.

  2. Copiez le code suivant dans un fichier et enregistrez-le sous le nom 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

    Si vous voulez que votre application et DynamoDB Local soient dans des conteneurs distincts, utilisez le fichier yaml suivant :

    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: amazon/aws-cli 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

    Ce script docker-compose.yml crée un conteneur app-node et un conteneur dynamodb-local. Le script exécute une commande dans le conteneur app-node, qui utilise l' AWS CLI pour se connecter au conteneur dynamodb-local, et décrit les limites de compte et de table.

    Pour l'utiliser avec votre propre image d'application, remplacez la valeur image dans l'exemple ci-dessous par celle de votre application.

    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'
    Note

    Les scripts YAML nécessitent que vous spécifiiez une clé d' AWS accès et une clé AWS secrète, mais il n'est pas nécessaire qu'il s'agisse de AWS clés valides pour accéder à DynamoDB local.

  3. Exécutez la commande de ligne de commande suivante :

    docker-compose up

Suivez ces étapes pour utiliser Amazon DynamoDB dans votre application en tant que dépendance.

Pour déployer DynamoDB en tant que référentiel Apache Maven
  1. Téléchargez et installez Apache Maven. Pour plus d'informations, consultez Downloading Apache Maven et Installing Apache Maven.

  2. Ajoutez le référentiel Maven DynamoDB au fichier POM (Project Object Model) de votre application.

    <!--Dependency:--> <dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>DynamoDBLocal</artifactId> <version>2.3.0</version> </dependency> </dependencies>

    Exemple de modèle à utiliser avec Spring Boot 3 et/ou Spring Framework 6 :

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId> <artifactId>SpringMavenDynamoDB</artifactId> <version>1.0-SNAPSHOT</version> <properties> <spring-boot.version>3.0.1</spring-boot.version> <maven.compiler.source>17</maven.compiler.source> <maven.compiler.target>17</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.0.1</version> </parent> <dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>DynamoDBLocal</artifactId> <version>2.3.0</version> </dependency> <!-- Spring Boot --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <version>${spring-boot.version}</version> </dependency> <!-- Spring Web --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>${spring-boot.version}</version> </dependency> <!-- Spring Data JPA --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> <version>${spring-boot.version}</version> </dependency> <!-- Other Spring dependencies --> <!-- Replace the version numbers with the desired version --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>6.0.0</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>6.0.0</version> </dependency> <!-- Add other Spring dependencies as needed --> <!-- Add any other dependencies your project requires --> </dependencies> </project>
    Note

    Vous pouvez également utiliser l'URL du référentiel central Maven.

Pour un exemple de projet présentant plusieurs approches pour configurer et utiliser DynamoDB en local, notamment le téléchargement de fichiers JAR, leur exécution sous forme d'image Docker et leur utilisation en tant que dépendance Maven, consultez DynamoDB Local Sample Java Project.