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
Themen
- Voraussetzungen
- Schritt 1: Installieren der erforderlichen Tools
- Schritt 2 (optional): Installieren Sie das. NETCLIErweiterung für Lambda-Funktionen
- Schritt 3: Erstellen Sie eine. NETKonsolenanwendungsprojekt
- Schritt 4: Hinzufügen von Code
- Schritt 5: Erstellen und Ausführen des Codes
- Schritt 6: Erstellen und einrichten Sie eine. NETKonsolenanwendungsprojekt, das das verwendet AWS SDK for .NET
- Schritt 7: AWS SDK Code hinzufügen
- Schritt 8: Erstellen Sie den AWS SDK Code und führen Sie ihn aus
- Schritt 9: Bereinigen
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.
-
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
--version
Option.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. -
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
-
Laden Sie das herunter. NETSDKInstallationsskript in Ihre Umgebung, indem Sie den folgenden Befehl ausführen.
wget https://dot.net/v1/dotnet-install.sh
-
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
-
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
-
Fügen Sie das hinzu. NETSDKzu deinem
PATH
. Fügen Sie dazu im Shell-Profil für die Umgebung (z.B. die Datei.bashrc
) das Unterverzeichnis$HOME/.dotnet
wie folgt der VariablenPATH
für die Umgebung hinzu.-
Öffnen Sie die
.bashrc
-Datei mit dem Befehlvi
zum Bearbeiten.vi ~/.bashrc
-
Navigieren Sie für Amazon Linux mit dem Abwärtspfeil oder der Taste
j
zu der Zeile, die mitexport PATH
beginnt.Gehen Sie für Ubuntu Server in die letzte Zeile der Datei, indem Sie
G
eingeben. -
Navigieren Sie mit dem Rechtspfeil oder der Taste
$
zum Ende dieser Zeile. -
Wechseln Sie in den Einfügemodus, indem Sie die
i
-Taste drücken. (-- INSERT ---
erscheint am Ende der Anzeige). -
Fügen Sie für Amazon Linux das Unterverzeichnis
$HOME/.dotnet
zur VariablenPATH
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
-
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 dannEnter
.
-
-
Lade das. NETSDKindem Sie die
.bashrc
Datei beschaffen.. ~/.bashrc
-
Bestätigen Sie die. NETSDKwird durch Ausführen geladen. NETCLImit der
--help
Option.dotnet --help
Bei Erfolg, das. NETSDKDie Versionsnummer wird mit zusätzlichen Nutzungsinformationen angezeigt.
-
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.
-
Zur Installation dieses Pakets führen Sie den folgenden Befehl aus:
dotnet tool install -g Amazon.Lambda.Tools
-
Legen Sie nun die Umgebungsvariablen
PATH
undDOTNET_ROOT
so fest, dass sie auf das installierte Lambda-Tool verweisen. Suchen Sie in der Datei.bashrc
den Abschnittexport 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 new
Befehl, 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.
-
Erstellen Sie im IDE einen Builder für. NETwie folgt.
-
Wählen Sie in der Menüleiste Run (Ausführen), Build System (Build-System), New Build System (Neues Build-System).
-
Ersetzen Sie den Inhalt der Registerkarte My Builder.build (Mein Builder.build) durch den folgenden Code.
{ "cmd" : ["dotnet", "build"], "info" : "Building..." }
-
Wählen Sie File (Datei), Save As (Speichern unter) aus.
-
Geben Sie für Filename (Dateiname) den Wert
.NET.build
ein. -
Geben Sie für Folder (Ordner) den Wert
/.c9/builders
ein. -
Wählen Sie Save (Speichern) aus.
-
-
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 namensDebug
in das Unterverzeichnishello/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. -
-
Erstelle einen Läufer für. NETwie folgt.
-
Wählen Sie in der Menüleiste Run (Ausführen), Run With (Ausführen mit), New Runner (Neuer Runner).
-
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..." }
-
Wählen Sie File (Datei), Save As (Speichern unter) aus.
-
Geben Sie für Filename (Dateiname) den Wert
.NET.run
ein. -
Geben Sie für Folder (Ordner) den Wert
/.c9/runners
ein. -
Wählen Sie Save (Speichern) aus.
-
-
Führen Sie die Anwendung folgendermaßen mit zwei übergebenen Ganzzahlen aus (z. B.
5
und9
).-
Wählen Sie
Program.cs
Run (Ausführen), Run Configurations (Ausführungskonfigurationen), New Run Configuration (Neue Ausführungskonfiguration), während der Inhalt der Datei im Editor angezeigt wird. -
Wählen Sie auf der Registerkarte [Neu] — Leerlauf die Option Runner: Auto und dann. NET.
-
Geben Sie in das Feld Command (Befehl) den Wert
hello 5 9
ein. -
Wählen Sie Ausführen aus.
Standardmäßig weist dieser Läufer an. NETum die
hello.dll
Datei imhello/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
-
Erstellen Sie eine. NETKonsolenanwendungsprojekt. Führen Sie dazu den aus. NETCLImit dem
new
Befehl, 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 -
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 package
Befehl, 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.
-
Erstellen Sie das Projekt. Wählen Sie zu diesem Zweck in der Menüleiste
s3/Program.cs
Run (Ausführen), Build (Erstellen), während der Inhalt der Datei im Editor angezeigt wird. -
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
undus-east-2
).-
Wählen Sie
s3/Program.cs
Run (Ausführen), Run Configurations (Ausführungskonfigurationen), New Run Configuration (Neue Ausführungskonfiguration), während der Inhalt der Datei noch im Editor angezeigt wird. -
Wählen Sie auf der Registerkarte [Neu] — Leerlauf die Option Runner: Auto und wählen Sie dann. NET.
-
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
). -
Wählen Sie Ausführen aus.
Standardmäßig weist dieser Runner Anweisungen an. NETum die
s3.dll
Datei ims3/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.