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.
Verwenden der EB CLI mit AWS CodeBuild
AWS CodeBuild kompiliert den Quellcode, führt Komponententests aus und erzeugt Artefakte, die bereitgestellt werden können. Sie können CodeBuild zusammen mit der EB CLI verwenden, um die Erstellung Ihrer Anwendung aus ihrem Quellcode zu automatisieren. Die Erstellung der Umgebung und alle anschließenden Bereitstellungen beginnen mit einem Erstellungsschritt, nach dem die so erstellte Anwendung bereitgestellt wird.
Anmerkung
Einige Regionen bieten kein CodeBuild an. Die Integration zwischen Elastic Beanstalk und CodeBuild funktioniert in diesen Regionen nicht.
Weitere Informationen zu den AWS-Services, die in den einzelnen Regionen angeboten werden, finden Sie in der Tabelle der Regionen
Erstellen einer Anwendung
So erstellen Sie eine Elastic Beanstalk-Anwendung, die CodeBuild verwendet:
-
Fügen Sie in Ihren Anwendungsordner eine Spezifikationsdatei für die CodeBuild-Erstellung ein,
buildspec.yml
. -
Fügen Sie der Datei einen
eb_codebuild_settings
-Eintrag mit spezifischen Optionen für Elastic Beanstalk hinzu. -
Führen Sie eb init im Ordner aus.
Anmerkung
Verwenden Sie nicht den Punkt (
.
) oder das Leerzeichen (
Elastic Beanstalk erweitert das CodeBuild Build-Spezifikationsdateiformat um die folgenden zusätzlichen Einstellungen:
eb_codebuild_settings:
CodeBuildServiceRole: role-name
ComputeType: size
Image: image
Timeout: minutes
CodeBuildServiceRole
-
Der ARN oder Name der AWS Identity and Access Management (IAM)-Servicerolle, die von CodeBuild für die Interaktion mit abhängigen AWS-Services in Ihrem Namen verwendet werden kann. Dieser Wert ist erforderlich. Wenn Sie diesen auslassen, schlagen alle folgenden eb create- oder eb deploy-Befehle fehl.
Weitere Informationen zum Erstellen einer Servicerolle für CodeBuild finden Sie unter Erstellen einer CodeBuild-Servicerolle im AWS CodeBuild-Benutzerhandbuch für CodeBuild.
Anmerkung
Sie benötigen außerdem Berechtigungen für das Ausführen von Aktionen in CodeBuild selbst. Die Richtlinie für verwaltete Benutzer von Elastic Beanstalk AdministratorAccess-AWSElasticBeanstalk enthält alle erforderlichen Berechtigungen für die CodeBuild-Aktion. Wenn Sie die verwaltete Richtlinie nicht verwenden, müssen Sie in Ihrer Benutzerrichtlinie die folgenden Berechtigungen erteilen:
"codebuild:CreateProject", "codebuild:DeleteProject", "codebuild:BatchGetBuilds", "codebuild:StartBuild"
Details hierzu finden Sie unter Elastic Beanstalk-Benutzerrichtlinien verwalten.
ComputeType
-
Die Zahl der Ressourcen, die vom Docker-Container in der CodeBuild-Erstellungsumgebung verwendet werden. Gültige Werte sind BUILD_GENERAL1_SMALL, BUILD_GENERAL1_MEDIUM und BUILD_GENERAL1_LARGE.
Image
-
Der Name des Docker-Hubs oder Amazon ECR-Images, das CodeBuild für die Build-Umgebung verwendet. Dieses Docker-Image sollte alle Tools und Laufzeitbibliotheken enthalten, die zum Erstellen Ihres Codes erforderlich sind, und sollte mit der Zielplattform Ihrer Anwendung übereinstimmen. CodeBuild verwaltet und pflegt einen Satz von Images, die speziell für die Verwendung mit Elastic Beanstalk vorgesehen sind. Es wird empfohlen, eines dieser Images zu verwenden. Weitere Einzelheiten finden Sie unter Von CodeBuild bereitgestellte Docker-Images im AWS CodeBuild-Benutzerhandbuch.
Der
Image
-Wert ist optional. Wenn Sie diesen nicht angeben, wählt der Befehl eb init das am besten mit Ihrer Zielplattform übereinstimmende Image aus. Wenn Sie eb init im interaktiven Modus ausführen und der Befehl kein Image auswählen kann, werden Sie aufgefordert, ein Image auszuwählen. Am Ende einer erfolgreichen Initialisierung schreibt eb init das ausgewählte Image in die Dateibuildspec.yml
. Timeout
-
Die Dauer (in Minuten), in der der CodeBuild-Build ausgeführt wird, bevor ein Timeout erfolgt. Dieser Wert ist optional. Details zu gültigen und Standardwerten finden Sie unter Erstellen eines Build-Projekts in CodeBuild.
Anmerkung
Diese Zeitüberschreitung steuert die maximale Dauer einer CodeBuild-Ausführung. Die EB CLI berücksichtigt sie als Teil des ersten Schritts bei der Erstellung einer Anwendungsversion. Es handelt sich nicht um den Wert, den Sie mittels der Option
--timeout
der Befehle eb create oder eb deploy angeben können. Dieser Wert steuert die Zeit, die die EB CLI auf die Erstellung oder Aktualisierung einer Umgebung maximal warten soll.
Erstellen und Bereitstellen Ihres Anwendungscodes
Wenn Ihr Anwendungscode bereitgestellt werden muss, verwendet die EB CLI, um mit CodeBuild einen Build auszuführen, und stellt anschließend die so erstellten Build-Artefakte in Ihrer Umgebung bereit. Dies ist bei Erstellung einer Elastic Beanstalk-Umgebung für Ihre Anwendung über den Befehl eb create und bei jeder späteren Bereitstellung von Codeänderungen in der Umgebung über den Befehl eb deploy der Fall.
Wenn der CodeBuild-Schritt fehlschlägt, wird die Erstellung oder Bereitstellung der Umgebung nicht gestartet.