Bereitstellen von DynamoDB Locally lokal auf Ihrem Computer - Amazon-DynamoDB

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Bereitstellen von DynamoDB Locally lokal auf Ihrem Computer

Wichtig

Die lokale JAR-Datei von DynamoDB kann von unseren AWS CloudFront Distributionslinks heruntergeladen werden, auf die hier verwiesen wird. Ab dem 1. Januar 2025 werden die alten S3-Distribution-Buckets nicht mehr aktiv sein und DynamoDB Local wird nur noch über CloudFront Distributionslinks verteilt.

Anmerkung
  • Es sind zwei Hauptversionen von DynamoDB local verfügbar: DynamoDB local v2.x (aktuell) und DynamoDB local v1.x (Legacy). Kunden sollten nach Möglichkeit Version 2.x (Current) verwenden, da diese die neuesten Versionen der Java-Laufzeitumgebung unterstützt und mit dem jakarta.*-Namespace für das Maven-Projekt kompatibel ist. DynamoDB Local v1.x wird ab dem 1. Januar 2025 das Ende der Standardunterstützung erreichen. Nach diesem Datum wird v1.x keine Updates oder Bugfixes mehr erhalten.

  • DynamoDB Local AWS_ACCESS_KEY_ID kann nur Buchstaben (A–Z, a–z) und Zahlen (0–9) enthalten.

Gehen Sie wie folgt vor, um DynamoDB einzurichten und auf Ihrem Computer auszuführen.

So richten Sie DynamoDB auf dem Computer ein
  1. Laden Sie DynamoDB Local kostenlos von einem der folgenden Orte herunter.

    Download-Links Prüfsummen

    .tar.gz | .zip

    .tar.gz.sha256 | .zip.sha256

    Wichtig

    Um DynamoDB v2.5.0 oder höher auf Ihrem Computer ausführen zu können, benötigen Sie Java Runtime Environment (JRE) Version 17.x oder neuer. Die Anwendung kann nicht auf früheren Versionen ausgeführt werden. JRE

  2. Nachdem Sie das Archiv heruntergeladen haben, extrahieren Sie die Inhalte und kopieren Sie das entpackte Verzeichnis an einen Speicherort Ihrer Wahl.

  3. Zum Starten von DynamoDB auf Ihrem Computer, öffnen Sie ein Befehlszeilenfenster, gehen Sie zu dem Verzeichnis, in das Sie DynamoDBLocal.jar extrahiert haben, und geben Sie den folgenden Befehl ein.

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

    Wenn Sie Windows verwenden PowerShell, achten Sie darauf, den Parameternamen oder den gesamten Namen und Wert wie folgt einzuschließen:

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

    DynamoDB verarbeitet eingehende Anforderungen, bis Sie den Service beenden. Zum Beenden von DynamoDB geben Sie Strg+C in die Befehlszeile ein.

    DynamoDB verwendet standardmäßig Port 8000. Wenn Port 8000 nicht verfügbar ist, wird eine Ausnahme ausgelöst. Um eine vollständige Liste der DynamoDB-Laufzeitoptionen, einschließlich -port, zu erhalten, geben Sie folgenden Befehl ein.

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

  4. Bevor Sie programmgesteuert oder über die AWS Command Line Interface (AWS CLI) auf DynamoDB zugreifen können, müssen Sie die Anmeldeinformationen so konfigurieren, dass die Autorisierung für die Anwendungen aktiviert wird. Die herunterladbare Version von DynamoDB benötigt Anmeldeinformationen, um arbeiten zu können, wie in dem folgenden Beispiel gezeigt.

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

    Sie können die Anmeldeinformationen mit dem  AWS CLI -Befehl aws configure einrichten. Weitere Informationen finden Sie unter Mit dem AWS CLI.

  5. Beginnen Sie mit dem Schreiben von Anwendungen. Verwenden Sie den Parameter, um auf DynamoDB zuzugreifen AWS CLI, das lokal mit dem ausgeführt wird--endpoint-url . Sie können z. B. den folgenden Befehl verwenden, um DynamoDB-Tabellen aufzulisten.

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

Die herunterladbare Version von Amazon DynamoDB ist als Docker-Image verfügbar. Weitere Informationen finden Sie unter dynamodb-local. Geben Sie den folgenden Befehl ein, um Ihre aktuelle lokale Version von DynamoDB zu sehen:

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

Ein Beispiel für die Verwendung von DynamoDB local als Teil einer REST Anwendung, die auf der AWS Serverless Application Model (AWS SAM) aufbaut, finden Sie unter SAMDynamoDB-Anwendung zur Verwaltung von Bestellungen. Diese Beispielanwendung demonstriert die Verwendung von DynamoDB local für Testzwecke.

Wenn Sie eine Anwendung mit mehreren Containern ausführen möchten, die auch den lokalen DynamoDB-Container nutzt, verwenden Sie Docker Compose, um alle Services in Ihrer Anwendung zu definieren und auszuführen, einschließlich DynamoDB lokal.

So gehen Sie vor, um DynamoDB zu installieren und lokal auszuführen:
  1. Führen Sie Download und Installation von Docker Desktop durch.

  2. Kopieren Sie den folgenden Code in eine Datei, und speichern Sie ihn unter 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

    Wenn sich Ihre Anwendung und DynamoDB lokal in separaten Containern befinden sollen, verwenden Sie die folgende YAML-Datei:

    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

    Dieses docker-compose.yml-Skript erstellt einen app-node-Container und einen dynamodb-local-Container. Das Skript führt einen Befehl im Container app-node aus, der mithilfe der AWS CLI eine Verbindung mit dem dynamodb-local-Container herstellt und die Konten- und Tabellenlimits beschreibt.

    Wenn Sie diesen Vorgang bei Ihrem eigenen Anwendungsimage verwenden möchten, ersetzen Sie den Wert image im folgenden Beispiel durch den Wert Ihrer Anwendung.

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

    Die YAML Skripts erfordern, dass Sie einen AWS Zugriffsschlüssel und einen AWS geheimen Schlüssel angeben, aber es müssen keine gültigen AWS Schlüssel sein, damit Sie lokal auf DynamoDB zugreifen können.

  3. Führen Sie die folgende Befehlzeilen-Befehle aus:

    docker-compose up

Führen Sie die folgenden Schritte aus, um Amazon DynamoDB in Ihrer Anwendung als Abhängigkeit zu verwenden.

So stellen Sie DynamoDB als Apache-Maven-Repository bereit
  1. Laden Sie Apache Maven herunter und installieren Sie es. Weitere Informationen finden Sie unter Downloading Apache Maven und Installing Apache Maven.

  2. Fügen Sie das DynamoDB-Maven-Repository zur Project Object Model () POM -Datei Ihrer Anwendung hinzu.

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

    Beispielvorlage zur Verwendung mit Spring Boot 3 und/oder 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.5.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>
    Anmerkung

    Sie können auch das zentrale Maven-Repository verwenden. URL

Ein Beispiel für ein Beispielprojekt, das mehrere Ansätze zur Einrichtung und Verwendung von DynamoDB lokal zeigt, einschließlich des Herunterladens von JAR Dateien, der Ausführung als Docker-Image und der Verwendung als Maven-Abhängigkeit, finden Sie unter DynamoDB Local Sample Java Project.