Schritt 3: Laden Sie Ihre WordPress Bewerbung auf Amazon S3 hoch - 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 Ihre WordPress Bewerbung auf Amazon S3 hoch

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 Amazon EC2 EC2-Instances, die in Bereitstellungen verwendet werden, die Revision aus dem Bucket herunterladen können.

Sie können die AWS CLI Amazon S3-Konsole oder die Amazon S3-APIs verwenden, um einen Amazon S3-Bucket zu erstellen. Nachdem Sie den Bucket erstellt haben, stellen Sie sicher, dass Sie Zugriffsberechtigungen für den Bucket und Ihr AWS Konto erteilen.

Anmerkung

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

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

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

Rufen Sie den mb Befehl auf, um einen Amazon S3 S3-Bucket mit dem Namen zu erstellencodedeploydemobucket:

aws s3 mb s3://codedeploydemobucket --region region

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

  1. Öffnen Sie die Amazon-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 das Amazon AWS S3-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 Namencodedeploydemobucket:

{ "Statement": [ { "Action": [ "s3:PutObject" ], "Effect": "Allow", "Resource": "arn:aws:s3:::codedeploydemobucket/*", "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 Amazon EC2 EC2-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 Amazon EC2 EC2-Instance mit einem angehängten IAM-Instance-Profil, das den ARN arn:aws:iam::444455556666:role/CodeDeployDemo enthält, Dateien aus einem beliebigen Verzeichnis im Amazon S3 S3-Bucket mit dem Namen herunterzuladen: codedeploydemobucket

{ "Statement": [ { "Action": [ "s3:Get*", "s3:List*" ], "Effect": "Allow", "Resource": "arn:aws:s3:::codedeploydemobucket/*", "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.

Informationen zum Erstellen und Anhängen einer IAM-Richtlinie finden Sie unter Arbeiten mit Richtlinien.

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

Stellen Sie sicher, dass die WordPress Anwendungsdateien, die AppSpec Datei und die Skripts auf Ihrem Entwicklungscomputer ähnlich wie folgt organisiert sind:

/tmp/ |--WordPress/ |-- appspec.yml |-- scripts/ | |-- change_permissions.sh | |-- create_test_db.sh | |-- install_dependencies.sh | |-- start_server.sh | |-- stop_server.sh |-- wp-admin/ | |-- (various files...) |-- wp-content/ | |-- (various files...) |-- wp-includes/ | |-- (various files...) |-- index.php |-- license.txt |-- readme.html |-- (various files ending with .php...)

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

Bündeln Sie die WordPress Anwendungsdateien und die AppSpec Datei in einer Archivdatei (bekannt als Anwendungsrevision).

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 /tmp/WordPress
    Anmerkung

    Wenn Sie nicht in diesen Ordner wechseln, startet die Dateibündelung im jeweils aktuellen Ordner. Beispiel: Wenn der aktuelle Ordner /tmp statt /tmp/WordPress ist, beginnt der Bündelvorgang mit den Dateien und Unterordnern im Ordner tmp, in dem u. U. mehr enthalten ist als bloß die WordPress-Unterordner.

  2. Rufen Sie den Befehl create-application auf, um eine neue Anwendung namens WordPress_App zu registrieren:

    aws deploy create-application --application-name WordPress_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 WordPress_App \ --s3-location s3://codedeploydemobucket/WordPressApp.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 NamenWordPressApp.zip, lädt die Revision in den codedeploydemobucket Bucket hoch und registriert Informationen CodeDeploy über die hochgeladene Revision.