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.
Plattform-Hooks
Plattform-Hooks wurden speziell entwickelt, um die Plattform Ihrer Umgebung zu erweitern. Es handelt sich um benutzerdefinierte Skripts und andere benutzerdefinierte ausführbare Dateien, die Sie als Teil des Quellcodes Ihrer Anwendung bereitstellen und die von Elastic Beanstalk in verschiedenen Phasen der Instance-Bereitstellung ausgeführt werden.
Anmerkung
Plattform-Hooks werden auf Amazon AMI Linux-Plattformversionen (vor Amazon Linux 2) nicht unterstützt.
Plattform-Hooks für die Anwendungsbereitstellung
Eine Anwendungsbereitstellung erfolgt, wenn Sie ein neues Quellpaket zur Bereitstellung angeben oder wenn Sie eine Konfigurationsänderung ausführen, für die alle Instances der Umgebung beendet und neu erstellt werden müssen.
Um Plattform-Hooks bereitzustellen, die während einer Anwendungsbereitstellung ausgeführt werden, speichern Sie die Dateien in einem der folgenden Unterverzeichnisse des Verzeichnisses .platform/hooks
im Quellpaket.
-
prebuild
– Die hier aufgeführten Dateien werden ausgeführt, nachdem die Elastic Beanstalk-Plattform-Engine das Anwendungs-Quell-Bundle heruntergeladen und extrahiert hat und bevor die Anwendung und der Webserver eingerichtet und konfiguriert werden.Die
prebuild
-Dateien werden ausgeführt, nachdem alle Befehle ausgeführt wurden, die im Abschnitt Commands einer beliebigen Konfigurationsdatei gefunden wurden, und bevorBuildfile
-Befehle ausgeführt werden. -
predeploy
– Die hier aufgeführten Dateien werden ausgeführt, nachdem die Elastic Beanstalk-Plattform-Engine die Anwendung und den Webserver eingerichtet und konfiguriert hat und bevor sie an ihrem endgültigen Laufzeitspeicherort bereitgestellt werden.Die
predeploy
-Dateien werden nach dem Ausführen von Befehlen im Abschnitt container_commands einer beliebigen Konfigurationsdatei und vor dem Ausführen vonProcfile
-Befehlen ausgeführt. -
postdeploy
– Die hier aufgeführten Dateien werden ausgeführt, nachdem die Elastic Beanstalk-Plattform-Engine die Anwendung und den Proxyserver bereitgestellt hat.Dies ist der letzte Schritt im Bereitstellungsworkflow.
Plattform-Hooks für die Konfigurationsbereitstellung
Eine Konfigurationsbereitstellung erfolgt, wenn Sie Konfigurationsänderungen ausführen, mit denen die Instances der Umgebung aktualisiert, jedoch nicht neu erstellt werden. Die folgenden Optionsaktualisierungen führen zu einer Konfigurationsaktualisierung.
-
Umgebungseigenschaften und plattformspezifische Einstellungen
-
Anwendungs-Port (Einzelheiten finden Sie unterReverse-Proxy-Konfiguration)
Um Hooks bereitzustellen, die während einer Konfigurationsbereitstellung ausgeführt werden, speichern Sie sie im Verzeichnis .platform/confighooks
im Quellpaket. Es werden die gleichen drei Unterverzeichnisse wie für Hooks für die Anwendungsbereitstellung verwendet.
Weitere Informationen zu Plattform-Hooks
Bei Hook-Dateien kann es sich um Binär- oder Skriptdateien handeln, die mit einer #!
-Zeile mit dem Interpreter-Pfad beginnen, z. B. #!/bin/bash
. Alle Dateien müssen über die Ausführungsberechtigung verfügen. Legen Sie mit chmod +x
die Ausführungsberechtigung für Ihre Hook-Dateien fest. Für alle auf Amazon Linux 2023 und Amazon Linux 2 basierenden Plattformversionen, die am oder nach dem 29. April 2022 veröffentlicht wurden, gewährt Elastic Beanstalk automatisch Ausführungsberechtigungen für alle Plattform-Hook-Skripts. In diesem Fall müssen Sie Ausführungsberechtigungen nicht manuell erteilen. Eine Liste dieser Plattformversionen finden Sie in den Linux-Versionshinweisen vom 29. April 2022 im AWS Elastic Beanstalk Leitfaden mit Versionshinweisen.
Elastic Beanstalk führt in jedem dieser Verzeichnisse Dateien in lexikographischer Reihenfolge der Dateinamen aus. Alle Dateien werden als root
-Benutzer ausgeführt. Das aktuelle Arbeitsverzeichnis (cwd) für Plattform-Hooks ist das Stammverzeichnis der Anwendung. Für prebuild
- und predeploy
-Dateien ist es das Anwendungs-Staging-Verzeichnis, und für postdeploy
-Dateien ist es das aktuelle Anwendungsverzeichnis. Wenn eine der Dateien fehlschlägt (mit einem Exit-Code ungleich Null beendet wird), wird die Bereitstellung abgebrochen und schlägt fehl.
Ein Platform-Hooks-Textskript kann fehlschlagen, wenn es Zeilenumbruchzeichen in Windows Carriage CRLF Return/Line Feed () enthält. Wenn eine Datei auf einem Windows-Host gespeichert und dann auf einen Linux-Server übertragen wurde, kann sie CRLF Windows-Zeilenumbrüche enthalten. Für Plattformen, die am oder nach dem 29. Dezember 2022 veröffentlicht wurden, konvertiert Elastic Beanstalk automatisch CRLF Windows-Zeichen in Linux-Zeilenumbruchzeichen (LF) in Plattform-Hooks-Textdateien. Wenn Ihre Anwendung auf einer Amazon Linux 2-Plattform läuft, die vor diesem Datum veröffentlicht wurde, müssen Sie die CRLF Windows-Zeichen in Linux LF-Zeichen konvertieren. Eine Möglichkeit, dies zu erreichen, besteht darin, die Skriptdatei auf einem Linux-Host zu erstellen und zu speichern. Tools, die diese Zeichen konvertieren, sind auch im Internet verfügbar.
Hook-Dateien können auf alle Umgebungseigenschaften zugreifen, die Sie in den Anwendungsoptionen definiert haben, sowie auf die Systemumgebungsvariablen HOME
, PATH
und PORT
.
Um die Werte von Umgebungsvariablen und anderen Konfigurationsoptionen für Ihre Skripts für Plattform-Hooks abzurufen, können Sie das get-config
-Dienstprogramm verwenden, das Elastic Beanstalk auf Umgebungs-Instances verwendet. Details hierzu finden Sie unter Plattform-Skripttools für Ihre Elastic Beanstalk Beanstalk-Umgebungen.