Schritt 3: Laden Sie Ihr „Hallo, Welt!“ hoch Anwendung auf Amazon S3 - AWS CodeDeploy

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.

Schritt 3: Laden Sie Ihr „Hallo, Welt!“ hoch Anwendung auf Amazon S3

Jetzt bereiten Sie Ihre Quellinhalte vor und laden sie an einen Ort hoch, von dem aus Sie sie bereitstellen CodeDeploy können. Die folgenden Anweisungen zeigen Ihnen, wie Sie einen Amazon S3 S3-Bucket bereitstellen, die Dateien der Anwendungsrevision für den Bucket vorbereiten, die Dateien der Revision bündeln und dann die Revision in den Bucket übertragen.

Anmerkung

Obwohl dies in diesem Tutorial nicht behandelt wird, können Sie es verwenden, CodeDeploy um Anwendungen von GitHub Repositorys auf Instances bereitzustellen. Weitere Informationen finden Sie unter Integrieren CodeDeploy mit GitHub.

Bereitstellen eines Amazon S3 S3-Buckets

Erstellen Sie einen Speichercontainer oder Bucket in Amazon S3 — oder verwenden Sie einen vorhandenen Bucket. Stellen Sie sicher, dass Sie die Revision in den Bucket hochladen können und dass EC2 Amazon-Instances, die in Bereitstellungen verwendet werden, die Revision aus dem Bucket herunterladen können.

Sie können die AWS CLI, die Amazon S3-Konsole oder Amazon S3 verwenden, APIs um einen Amazon S3 S3-Bucket zu erstellen. Nachdem Sie den Bucket erstellt haben, stellen Sie sicher, dass Sie dem Bucket und Ihrem CodeDeploy Benutzer Zugriffsberechtigungen erteilen.

Anmerkung

Bucket-Namen müssen in Amazon S3 für alle AWS Konten eindeutig sein. Falls Sie amzn-s3-demo-bucket nicht verwenden können: Versuchen Sie es mit einem anderen Bucket-Namen wie amzn-s3-demo-bucket, gefolgt von einem Bindestrich und Ihren Initialen oder einem anderen eindeutigen Bezeichner. Anschließend müssen Sie überall im Tutorial amzn-s3-demo-bucket durch Ihren Bucket-Namen ersetzen.

Der Amazon S3 S3-Bucket muss in derselben AWS Region erstellt werden, in der Ihre EC2 Amazon-Ziel-Instances gestartet werden. Wenn Sie den Bucket beispielsweise in der Region USA Ost (Nord-Virginia) erstellen, müssen Ihre EC2 Amazon-Ziel-Instances in der Region USA Ost (Nord-Virginia) gestartet werden.

Um einen Amazon S3 S3-Bucket zu erstellen (CLI)

Rufen Sie den mb Befehl auf, um einen Amazon S3 S3-Bucket mit dem Namen zu erstellenamzn-s3-demo-bucket:

aws s3 mb s3://amzn-s3-demo-bucket --region region

So erstellen Sie einen Amazon S3 S3-Bucket (Konsole)

  1. Öffnen Sie die Amazon S3 S3-Konsole unter https://console.aws.amazon.com/s3/.

  2. Wählen Sie in der Amazon S3 S3-Konsole Create Bucket aus.

  3. Geben Sie im Feld Bucket name (Bucket-Name) einen Namen für den Bucket ein.

  4. Wählen Sie aus der Liste Region die Zielregion aus, und klicken Sie auf Create (Erstellen).

Erteilen Sie Berechtigungen für den Amazon S3 S3-Bucket und Ihr AWS Konto

Sie müssen über Berechtigungen zum Hochladen in den Amazon S3 S3-Bucket verfügen. Sie können diese Berechtigungen über eine Amazon S3 S3-Bucket-Richtlinie angeben. In der folgenden Amazon S3 S3-Bucket-Richtlinie ermöglicht die Verwendung des Platzhalterzeichens (*) dem AWS Konto 111122223333 beispielsweise das Hochladen von Dateien in ein beliebiges Verzeichnis im Amazon S3 S3-Bucket mit dem Namenamzn-s3-demo-bucket:

{ "Statement": [ { "Action": [ "s3:PutObject" ], "Effect": "Allow", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*", "Principal": { "AWS": [ "111122223333" ] } } ] }

Informationen zur Anzeige Ihrer AWS Konto-ID finden Sie unter Ihre AWS Konto-ID finden.

Jetzt ist ein guter Zeitpunkt, um zu überprüfen, ob der Amazon S3 S3-Bucket Download-Anfragen von jeder teilnehmenden EC2 Amazon-Instance zulässt. Sie können dies über eine Amazon S3 S3-Bucket-Richtlinie angeben. In der folgenden Amazon S3 S3-Bucket-Richtlinie ermöglicht die Verwendung des Platzhalterzeichens (*) beispielsweise jeder EC2 Amazon-Instance mit einem angehängten IAM Instance-Profil, das die ARN arn:aws:iam::444455556666:role/CodeDeployDemo enthält, Dateien aus einem beliebigen Verzeichnis im Amazon S3-Bucket mit dem Namen amzn-s3-demo-bucket herunterzuladen:

{ "Statement": [ { "Action": [ "s3:Get*", "s3:List*" ], "Effect": "Allow", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*", "Principal": { "AWS": [ "arn:aws:iam::444455556666:role/CodeDeployDemo" ] } } ] }

Informationen zum Generieren und Anhängen einer Amazon S3 S3-Bucket-Richtlinie finden Sie unter Beispiele für Bucket-Richtlinien.

Der CodeDeploy Administratorbenutzer, in dem Sie erstellt haben, Schritt 1: Einrichtung muss auch über die Berechtigung verfügen, die Revision in den Amazon S3 S3-Bucket hochzuladen. Eine Möglichkeit, dies zu spezifizieren, besteht in einer IAM Richtlinie, die Sie dem Berechtigungssatz des Benutzers oder einer IAM Rolle (die Sie dem Benutzer zuweisen) hinzufügen. Die folgende IAM Richtlinie ermöglicht es dem Benutzer, Revisionen an eine beliebige Stelle im Amazon S3 S3-Bucket mit dem Namen amzn-s3-demo-bucket hochzuladen:

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":["s3:PutObject"], "Resource":"arn:aws:s3:::amzn-s3-demo-bucket/*" } ] }

Informationen zum Erstellen einer IAM Richtlinie finden Sie unter IAMRichtlinien erstellen im IAMBenutzerhandbuch. Informationen zum Hinzufügen einer Richtlinie zu einem Berechtigungssatz finden Sie unter Erstellen eines Berechtigungssatzes im AWS IAM Identity Center Benutzerhandbuch.

Bereiten Sie die Dateien der Anwendung für den Bucket vor

Stellen Sie sicher, dass die Webseite, die AppSpec Datei und das Skript auf Ihrem Entwicklungscomputer wie folgt organisiert sind:

c:\ |-- temp\ |--HelloWorldApp\ |-- appspec.yml |-- before-install.bat |-- index.html

Bündeln Sie die Dateien der Anwendung in einer einzigen Archivdatei und übertragen Sie die Archivdatei per Push

Bündeln Sie die Dateien in einer Archivdatei (auch Anwendungsrevision genannt).

Anmerkung

Möglicherweise werden Ihnen für die Speicherung von Objekten in einem Bucket und die Übertragung von Anwendungsrevisionen in einen oder aus einem Bucket Gebühren berechnet. Weitere Informationen finden Sie unter Amazon S3 – Preise.

  1. Wechseln Sie auf dem Entwicklungscomputer in den Ordner, in dem die Dateien abgelegt sind:

    cd c:\temp\HelloWorldApp
    Anmerkung

    Wenn Sie nicht in diesen Ordner wechseln, startet die Dateibündelung im jeweils aktuellen Ordner. Beispiel: Wenn der aktuelle Ordner c:\temp statt c:\temp\HelloWorldApp ist, beginnt der Bündelvorgang mit den Dateien und Unterordnern im Ordner c:\temp, in dem u. U. mehr enthalten ist als nur der HelloWorldApp-Unterordner.

  2. Rufen Sie den create-application Befehl auf, um eine neue Anwendung HelloWorld_App mit dem folgenden Namen zu registrieren CodeDeploy:

    aws deploy create-application --application-name HelloWorld_App
  3. Rufen Sie den CodeDeploy Push-Befehl auf, um die Dateien zu bündeln, die Revisionen auf Amazon S3 hochzuladen und Informationen CodeDeploy über die hochgeladene Version zu registrieren — alles in einer Aktion.

    aws deploy push --application-name HelloWorld_App --s3-location s3://amzn-s3-demo-bucket/HelloWorld_App.zip --ignore-hidden-files

    Dieser Befehl bündelt die Dateien aus dem aktuellen Verzeichnis (mit Ausnahme aller versteckten Dateien) in einer einzigen Archivdatei mit dem NamenHelloWorld_App.zip, lädt die Revision in den amzn-s3-demo-bucket Bucket hoch und registriert Informationen CodeDeploy über die hochgeladene Revision.