. NETTutorial für AWS Cloud9 - AWS Cloud9

AWS Cloud9 ist für Neukunden nicht mehr verfügbar. Bestandskunden von AWS Cloud9 können den Service weiterhin wie gewohnt nutzen. Weitere Informationen

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.

. NETTutorial für AWS Cloud9

In diesem Tutorial können Sie einige ausführen. NETCode in einer AWS Cloud9 Entwicklungsumgebung.

Wenn Sie diesem Tutorial folgen und dieses Beispiel erstellen, kann dies zu Gebühren für Ihr AWS Konto führen. Dazu gehören mögliche Gebühren für Dienste wie Amazon EC2 und Amazon S3. Weitere Informationen finden Sie unter EC2Amazon-Preise und Amazon S3-Preise.

Voraussetzungen

Bevor Sie dieses Beispiel verwenden, stellen Sie sicher, dass Ihre Einrichtung die folgenden Anforderungen erfüllt:

  • Sie müssen über eine bestehende AWS Cloud9 EC2 Entwicklungsumgebung verfügen. In diesem Beispiel wird davon ausgegangen, dass Sie bereits über eine EC2 Umgebung verfügen, die mit einer EC2 Amazon-Instance verbunden ist, auf der Amazon Linux ausgeführt wird, oder Ubuntu Server. Wenn Sie ein andere Art von Umgebung oder ein anderes Betriebssystem verwenden, müssen Sie die Anweisungen dieses Beispiels zum Einrichten zugehöriger Tools möglicherweise anpassen. Weitere Informationen finden Sie unter Schaffung einer Umgebung in AWS Cloud9.

  • Sie haben die AWS Cloud9 IDE für die bestehende Umgebung bereits geöffnet. Wenn Sie eine Umgebung AWS Cloud9 öffnen, wird die IDE für diese Umgebung in Ihrem Webbrowser geöffnet. Weitere Informationen finden Sie unter Öffnen einer Umgebung in AWS Cloud9.

Schritt 1: Installieren der erforderlichen Tools

In diesem Schritt installieren Sie die. NETSDKin Ihre Umgebung, die für die Ausführung dieses Beispiels erforderlich ist.

  1. Bestätigen Sie, ob die neueste Version von. NETSDKist bereits in Ihrer Umgebung installiert. Führen Sie dazu in einer Terminalsitzung in der AWS Cloud9 IDE den aus. NETCore-Befehlszeilenschnittstelle (CLI) mit der --versionOption.

    dotnet --version

    Wenn der. NETDie Version der Befehlszeilentools wird angezeigt und die Version ist 2.0 oder höher, fahren Sie mit fortSchritt 3: Erstellen Sie eine. NETKonsolenanwendungsprojekt. Wenn die Version niedriger als 2.0 ist oder wenn ein Fehler wie angezeigt bash: dotnet: command not found wird, fahren Sie mit der Installation von fort. NETSDK.

  2. Führen Sie für Amazon Linux in einer Terminalsitzung in der die folgenden Befehle aus AWS Cloud9 IDE, um sicherzustellen, dass die neuesten Sicherheitsupdates und Bugfixes installiert sind, und um ein libunwind Paket zu installieren, das die. NETSDKbenötigt. (Um eine neue Terminalsitzung zu starten, wählen Sie in der Menüleiste Window (Fenster), New Terminal (Neues Terminal) aus.)

    sudo yum -y update sudo yum -y install libunwind

    Führen Sie für Ubuntu Server in einer Terminalsitzung den folgenden Befehl aus AWS Cloud9 IDE, um sicherzustellen, dass die neuesten Sicherheitsupdates und Bugfixes installiert sind. (Um eine neue Terminalsitzung zu starten, wählen Sie in der Menüleiste Window (Fenster), New Terminal (Neues Terminal) aus.)

    sudo apt -y update
  3. Laden Sie das herunter. NETSDKInstallationsskript in Ihre Umgebung, indem Sie den folgenden Befehl ausführen.

    wget https://dot.net/v1/dotnet-install.sh
  4. Machen Sie das Installationsskript für den aktuellen Benutzer ausführbar, indem Sie den folgenden Befehl ausführen.

    sudo chmod u=rx dotnet-install.sh
  5. Führen Sie das Installationsskript aus, das das herunterlädt und installiert. NETSDK, indem Sie den folgenden Befehl ausführen.

    ./dotnet-install.sh -c Current
  6. Fügen Sie das hinzu. NETSDKzu deinemPATH. Fügen Sie dazu im Shell-Profil für die Umgebung (z.B. die Datei .bashrc) das Unterverzeichnis $HOME/.dotnet wie folgt der Variablen PATH für die Umgebung hinzu.

    1. Öffnen Sie die .bashrc-Datei mit dem Befehl vi zum Bearbeiten.

      vi ~/.bashrc
    2. Navigieren Sie für Amazon Linux mit dem Abwärtspfeil oder der Taste j zu der Zeile, die mit export PATH beginnt.

      Gehen Sie für Ubuntu Server in die letzte Zeile der Datei, indem Sie G eingeben.

    3. Navigieren Sie mit dem Rechtspfeil oder der Taste $ zum Ende dieser Zeile.

    4. Wechseln Sie in den Einfügemodus, indem Sie die i-Taste drücken. (-- INSERT --- erscheint am Ende der Anzeige).

    5. Fügen Sie für Amazon Linux das Unterverzeichnis $HOME/.dotnet zur Variablen PATH hinzu, indem Sie :$HOME/.dotnet eingeben. Vergessen Sie nicht, den Doppelpunkt (:) anzugeben. Die Zeile sollte nun etwa folgendermaßen aussehen.

      export PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.dotnet

      Für Ubuntu Server drücken Sie die Pfeiltaste nach rechts und dann zweimal Enter, gefolgt von der Eingabe der folgenden Zeile am Ende der Datei.

      export PATH=$HOME/.dotnet:$PATH
    6. Speichern Sie die Datei. Drücken Sie zu diesem Zweck die Taste Esc (-- INSERT --- am Ende der Anzeige wird ausgeblendet), geben Sie :wq ein (damit in die Datei geschrieben und diese dann geschlossen wird) und drücken Sie dann Enter.

  7. Lade das. NETSDKindem Sie die .bashrc Datei beschaffen.

    . ~/.bashrc
  8. Bestätigen Sie die. NETSDKwird durch Ausführen geladen. NETCLImit der --helpOption.

    dotnet --help

    Bei Erfolg, das. NETSDKDie Versionsnummer wird mit zusätzlichen Nutzungsinformationen angezeigt.

  9. Wenn Sie das nicht mehr behalten möchten. NETSDKDas Installationsskript in Ihrer Umgebung können Sie wie folgt löschen.

    rm dotnet-install.sh

Schritt 2 (optional): Installieren Sie das. NETCLIErweiterung für Lambda-Funktionen

Obwohl für dieses Tutorial nicht erforderlich, können Sie AWS Lambda Funktionen und AWS Serverless Application Model Anwendungen mithilfe von bereitstellen. NETCLIwenn Sie das Amazon.Lambda.Tools Paket auch installieren.

  1. Zur Installation dieses Pakets führen Sie den folgenden Befehl aus:

    dotnet tool install -g Amazon.Lambda.Tools
  2. Legen Sie nun die Umgebungsvariablen PATH und DOTNET_ROOT so fest, dass sie auf das installierte Lambda-Tool verweisen. Suchen Sie in der Datei .bashrc den Abschnitt export PATH und bearbeiten Sie ihn so, dass er etwa wie folgt aussieht (Einzelheiten zur Bearbeitung dieser Datei finden Sie in Schritt 1):

    export PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.dotnet:$HOME/.dotnet/tools export DOTNET_ROOT=$HOME/.dotnet

Schritt 3: Erstellen Sie eine. NETKonsolenanwendungsprojekt

In diesem Schritt verwenden Sie. NETum ein Projekt mit dem Namen zu erstellenhello. Dieses Projekt enthält alle Dateien, die. NETmuss eine einfache Anwendung vom Terminal im ausführenIDE. Der Code der Anwendung ist in C# geschrieben.

Erstelle ein. NETKonsolenanwendungsprojekt. Führen Sie dazu den aus. NETCLImit dem newBefehl, wobei Sie den Typ der Projektvorlage für die Konsolenanwendung und die zu verwendende Programmiersprache (in diesem Beispiel C#) angeben.

Die Option -n gibt an, dass das Projekt in ein neues Verzeichnis, hello, ausgegeben wird: Navigieren Sie anschließend zu diesem Verzeichnis.

dotnet new console -lang C# -n hello cd hello

Der vorherige Befehl fügt ein Unterverzeichnis namens obj mit mehreren Dateien sowie einige eigenständige Dateien im Verzeichnis hello hinzu. Beachten Sie diese beiden wichtigen Dateien:

  • Die Datei hello/hello.csproj enthält Informationen zum Konsolenanwendungsprojekt.

  • Die Datei hello/Program.cs enthält den auszuführenden Code der Anwendung.

Schritt 4: Hinzufügen von Code

In diesem Schritt fügen Sie der Anwendung einige Codezeilen hinzu.

Öffnen Sie die hello/Program.cs Datei im AWS Cloud9 IDE Fenster Umgebung in.

Ersetzen Sie im Editor den aktuellen Inhalt der Datei durch den folgenden Code und speichern Sie dann die Datei Program.cs.

using System; namespace hello { class Program { static void Main(string[] args) { if (args.Length < 2) { Console.WriteLine("Please provide 2 numbers"); return; } Console.WriteLine("Hello, World!"); Console.WriteLine("The sum of 2 and 3 is 5."); int sum = Int32.Parse(args[0]) + Int32.Parse(args[1]); Console.WriteLine("The sum of {0} and {1} is {2}.", args[0], args[1], sum); } } }

Schritt 5: Erstellen und Ausführen des Codes

In diesem Schritt erstellen Sie das Projekt und seine Abhängigkeiten. Dabei entstehen eine Reihe von Binärdateien sowie eine ausführbare Anwendungsdatei. Anschließend führen Sie die Anwendung aus.

  1. Erstellen Sie im IDE einen Builder für. NETwie folgt.

    1. Wählen Sie in der Menüleiste Run (Ausführen), Build System (Build-System), New Build System (Neues Build-System).

    2. Ersetzen Sie den Inhalt der Registerkarte My Builder.build (Mein Builder.build) durch den folgenden Code.

      { "cmd" : ["dotnet", "build"], "info" : "Building..." }
    3. Wählen Sie File (Datei), Save As (Speichern unter) aus.

    4. Geben Sie für Filename (Dateiname) den Wert .NET.build ein.

    5. Geben Sie für Folder (Ordner) den Wert /.c9/builders ein.

    6. Wählen Sie Save (Speichern) aus.

  2. Wenn der Inhalt der Program.cs Datei im Editor angezeigt wird, wählen Sie Run, Build System,. NET. Wählen Sie dann Run (Ausführen), Build (Erstellen).

    Dieser Builder fügt ein Unterverzeichnis namens bin und fügt ein Unterverzeichnis namens Debug in das Unterverzeichnis hello/obj ein. Beachten Sie die folgenden drei wichtigen Dateien.

    • Die Datei hello/bin/Debug/netcoreapp3.1/hello.dll ist die ausführbare Anwendungsdatei.

    • Die Datei hello/bin/Debug/netcoreapp3.1/hello.deps.json listet die Abhängigkeiten der Anwendung auf.

    • Die Datei hello/bin/Debug/netcoreapp3.1/hello.runtimeconfig.json gibt die gemeinsame Laufzeitumgebung und deren Version für die Anwendung an.

    Anmerkung

    Der Ordnername,netcoreapp3.1, spiegelt die Version von wider. NETSDKwird in diesem Beispiel verwendet. Je nach installierter Version wird im Ordnernamen möglicherweise eine andere Nummer angezeigt.

  3. Erstelle einen Läufer für. NETwie folgt.

    1. Wählen Sie in der Menüleiste Run (Ausführen), Run With (Ausführen mit), New Runner (Neuer Runner).

    2. Ersetzen Sie den Inhalt der Registerkarte My Runner.run (Mein Runner.run) durch den folgenden Code.

      { "cmd" : ["dotnet", "run", "$args"], "working_dir": "$file_path", "info" : "Running..." }
    3. Wählen Sie File (Datei), Save As (Speichern unter) aus.

    4. Geben Sie für Filename (Dateiname) den Wert .NET.run ein.

    5. Geben Sie für Folder (Ordner) den Wert /.c9/runners ein.

    6. Wählen Sie Save (Speichern) aus.

  4. Führen Sie die Anwendung folgendermaßen mit zwei übergebenen Ganzzahlen aus (z. B. 5 und 9).

    1. Wählen Sie Program.csRun (Ausführen), Run Configurations (Ausführungskonfigurationen), New Run Configuration (Neue Ausführungskonfiguration), während der Inhalt der Datei im Editor angezeigt wird.

    2. Wählen Sie auf der Registerkarte [Neu] — Leerlauf die Option Runner: Auto und dann. NET.

    3. Geben Sie in das Feld Command (Befehl) den Wert hello 5 9 ein.

    4. Wählen Sie Ausführen aus.

      Standardmäßig weist dieser Läufer an. NETum die hello.dll Datei im hello/bin/Debug/netcoreapp3.1 Verzeichnis auszuführen.

      Vergleichen Sie die Ausgabe mit Folgendem.

      Hello, World! The sum of 2 and 3 is 5. The sum of 5 and 9 is 14.

Schritt 6: Erstellen und einrichten Sie eine. NETKonsolenanwendungsprojekt, das das verwendet AWS SDK for .NET

Sie können dieses Beispiel dahingehend erweitern, dass Sie den verwenden, AWS SDK for .NET um einen Amazon S3 S3-Bucket zu erstellen, Ihre verfügbaren Buckets aufzulisten und dann den gerade erstellten Bucket zu löschen.

In diesem neuen Projekt fügen Sie einen Verweis auf das AWS SDK for .NET hinzu. Das AWS SDK for .NET bietet eine bequeme Möglichkeit, von Ihrem aus mit AWS Diensten wie Amazon S3 zu interagieren. NETCode. Anschließend richten Sie die Verwaltung von AWS Anmeldeinformationen in Ihrer Umgebung ein. The AWS SDK for .NET benötigt diese Anmeldeinformationen, um mit AWS Diensten zu interagieren.

So erstellen Sie das --Projekt

  1. Erstellen Sie eine. NETKonsolenanwendungsprojekt. Führen Sie dazu den aus. NETCLImit dem newBefehl, wobei Sie den Typ der Projektvorlage für die Konsolenanwendung und die zu verwendende Programmiersprache angeben.

    Die Option -n gibt an, dass das Projekt in ein neues Verzeichnis, s3, ausgegeben wird: Navigieren Sie anschließend zu diesem Verzeichnis.

    dotnet new console -lang C# -n s3 cd s3
  2. Fügen Sie einen Projektverweis auf das Amazon S3-Paket in der Datei AWS SDK for .NET ein. Führen Sie dazu den aus. NETCLImit dem add packageBefehl, der den Namen des Amazon S3 S3-Pakets in angibt NuGet. (NuGetdefiniert, wie Pakete für. NETwerden erstellt, gehostet und genutzt und stellt die Tools für jede dieser Rollen bereit.)

    dotnet add package AWSSDK.S3

    Wenn Sie dem Amazon S3 S3-Paket eine Projektreferenz hinzufügen, wird NuGet auch eine Projektreferenz zum Rest von hinzugefügt AWS SDK for .NET.

    Anmerkung

    Die Namen und Versionen anderer AWS verwandter Pakete finden Sie auf der NuGet Website unter NuGetPakete, die NuGet mit aws-sdk gekennzeichnet sind.

So richten Sie die Verwaltung von Anmeldedaten ein AWS

Jedes Mal, wenn Sie den verwenden, AWS SDK for .NET um einen AWS Dienst aufzurufen, müssen Sie beim Anruf eine Reihe von AWS Anmeldeinformationen angeben. Diese Anmeldeinformationen bestimmen, ob der AWS SDK for .NET über die entsprechenden Berechtigungen verfügt, um diesen Anruf zu tätigen. Wenn die Anmeldeinformationen nicht die entsprechenden Berechtigungen haben, schlägt der Aufruf fehl.

Um Ihre Anmeldeinformationen in der Umgebung zu speichern, folgen Sie den Anweisungen unter AWS-Services Aus einer Umgebung anrufen in AWS Cloud9, und kehren Sie dann zu diesem Thema zurück.

Weitere Informationen finden Sie im AWS SDK for .NET Developer Guide unter Configuring AWS Credentials.

Schritt 7: AWS SDK Code hinzufügen

In diesem Schritt fügen Sie Code für die Interaktion mit Amazon S3 hinzu, um einen Bucket zu erstellen, den soeben erstellten Bucket hinzuzufügen und dann die verfügbaren Buckets aufzulisten.

Öffnen Sie die s3/Program.cs Datei im AWS Cloud9 IDE Fenster Umgebung in. Ersetzen Sie im Editor den aktuellen Inhalt der Datei durch den folgenden Code und speichern Sie dann die Datei Program.cs.

using Amazon; using Amazon.S3; using Amazon.S3.Model; using Amazon.S3.Util; using System; using System.Threading.Tasks; namespace s3 { class Program { async static Task Main(string[] args) { if (args.Length < 2) { Console.WriteLine("Usage: <the bucket name> <the AWS Region to use>"); Console.WriteLine("Example: my-test-bucket us-east-2"); return; } if (args[1] != "us-east-2") { Console.WriteLine("Cannot continue. The only supported AWS Region ID is " + "'us-east-2'."); return; } var bucketRegion = RegionEndpoint.USEast2; // Note: You could add more valid AWS Regions above as needed. using (var s3Client = new AmazonS3Client(bucketRegion)) { var bucketName = args[0]; // Create the bucket. try { if (await AmazonS3Util.DoesS3BucketExistV2Async(s3Client, bucketName)) { Console.WriteLine("Cannot continue. Cannot create bucket. \n" + "A bucket named '{0}' already exists.", bucketName); return; } else { Console.WriteLine("\nCreating the bucket named '{0}'...", bucketName); await s3Client.PutBucketAsync(bucketName); } } catch (AmazonS3Exception e) { Console.WriteLine("Cannot continue. {0}", e.Message); } catch (Exception e) { Console.WriteLine("Cannot continue. {0}", e.Message); } // Confirm that the bucket was created. if (await AmazonS3Util.DoesS3BucketExistV2Async(s3Client, bucketName)) { Console.WriteLine("Created the bucket named '{0}'.", bucketName); } else { Console.WriteLine("Did not create the bucket named '{0}'.", bucketName); } // Delete the bucket. Console.WriteLine("\nDeleting the bucket named '{0}'...", bucketName); await s3Client.DeleteBucketAsync(bucketName); // Confirm that the bucket was deleted. if (await AmazonS3Util.DoesS3BucketExistV2Async(s3Client, bucketName)) { Console.WriteLine("Did not delete the bucket named '{0}'.", bucketName); } else { Console.WriteLine("Deleted the bucket named '{0}'.", bucketName); }; // List current buckets. Console.WriteLine("\nMy buckets now are:"); var response = await s3Client.ListBucketsAsync(); foreach (var bucket in response.Buckets) { Console.WriteLine(bucket.BucketName); } } } } }

Schritt 8: Erstellen Sie den AWS SDK Code und führen Sie ihn aus

In diesem Schritt erstellen Sie das Projekt und seine Abhängigkeiten. Dabei entstehen eine Reihe von Binärdateien sowie eine ausführbare Anwendungsdatei. Anschließend führen Sie die Anwendung aus.

  1. Erstellen Sie das Projekt. Wählen Sie zu diesem Zweck in der Menüleiste s3/Program.csRun (Ausführen), Build (Erstellen), während der Inhalt der Datei im Editor angezeigt wird.

  2. Führen Sie folgendermaßen die Anwendung mit dem Namen des Amazon S3-Buckets und der ID der AWS -Region aus, in der der Bucket erstellt werden soll (z. B. my-test-bucket und us-east-2).

    1. Wählen Sie s3/Program.csRun (Ausführen), Run Configurations (Ausführungskonfigurationen), New Run Configuration (Neue Ausführungskonfiguration), während der Inhalt der Datei noch im Editor angezeigt wird.

    2. Wählen Sie auf der Registerkarte [Neu] — Leerlauf die Option Runner: Auto und wählen Sie dann. NET.

    3. Geben Sie im Feld Befehl den Namen der Anwendung, den Namen des zu erstellenden Amazon S3 S3-Buckets und die ID der AWS Region ein, in der der Bucket erstellt werden soll (z. B.s3 my-test-bucket us-east-2).

    4. Wählen Sie Ausführen aus.

      Standardmäßig weist dieser Runner Anweisungen an. NETum die s3.dll Datei im s3/bin/Debug/netcoreapp3.1 Verzeichnis auszuführen.

      Vergleichen Sie die Ergebnisse mit der folgenden Ausgabe.

      Creating a new bucket named 'my-test-bucket'... Created the bucket named 'my-test-bucket'. Deleting the bucket named 'my-test-bucket'... Deleted the bucket named 'my-test-bucket'. My buckets now are:

Schritt 9: Bereinigen

Um zu verhindern, dass Ihr AWS Konto weiterhin belastet wird, nachdem Sie dieses Beispiel nicht mehr verwendet haben, sollten Sie die Umgebung löschen. Detaillierte Anweisungen finden Sie unter Löschen einer Umgebung in AWS Cloud9.