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.
Möglicherweise möchten Sie Ihre AWS CodeBuild Builds auf Amazon Elastic File System erstellen, einem skalierbaren, gemeinsam genutzten Dateidienst für EC2 Amazon-Instances. Die Speicherkapazität bei Amazon EFS ist elastisch, sodass sie wächst oder schrumpft, wenn Dateien hinzugefügt und entfernt werden. Über eine einfache Web-Service-Schnittstelle können Sie Dateisysteme erstellen und konfigurieren. Die gesamte Dateispeicher-Infrastruktur wird für Sie verwaltet. Sie müssen sich damit nicht um Bereitstellung, Patching oder Wartung von Dateisystem-Konfigurationen kümmern. Weitere Informationen finden Sie unter Was ist Amazon Elastic File System? im Amazon Elastic File System-Benutzerhandbuch.
Dieses Beispiel zeigt Ihnen, wie Sie ein CodeBuild Projekt so konfigurieren, dass es eine Java-Anwendung in einem EFS Amazon-Dateisystem mountet und dann erstellt. Bevor Sie beginnen, müssen Sie eine Java-Anwendung zum Erstellen bereit haben, die in einen S3-Eingabe-Bucket oder ein AWS CodeCommit, GitHub, GitHub Enterprise Server- oder Bitbucket-Repository hochgeladen wird.
Daten, die für Ihr Dateisystem übertragen werden, werden verschlüsselt. Informationen zum Verschlüsseln von Daten während der Übertragung mit einem anderen Bild finden Sie unter Daten im Transit verschlüsseln.
Themen
Verwendung AWS CodeBuild mit Amazon Elastic File System
Das Beispiel deckt die vier wichtigsten Schritte ab, die für die Verwendung von Amazon EFS mit erforderlich sind AWS CodeBuild. Diese sind:
-
Erstellen Sie eine virtuelle private Cloud (VPC) in Ihrem AWS Konto.
-
Erstellen Sie ein Dateisystem, das dies verwendetVPC.
-
Erstellen und erstellen Sie ein CodeBuild Projekt, das die verwendetVPC. Das CodeBuild Projekt verwendet Folgendes, um das Dateisystem zu identifizieren:
-
Eine eindeutige Dateisystemkennung. Sie wählen die Kennung, wenn Sie das Dateisystem in Ihrem Build-Projekt angeben.
-
Die Dateisystem-ID. Die ID wird angezeigt, wenn Sie Ihr Dateisystem in der EFS Amazon-Konsole aufrufen.
-
Ein Mountingpunkt. Dies ist ein Verzeichnis in Ihrem Docker-Container, das das Dateisystem mountet.
-
Mountingoptionen. Dazu gehören Details zum Mounten des Dateisystems.
-
-
Überprüfen Sie das Build-Projekt, um sicherzustellen, dass die richtigen Projektdateien und Variablen generiert wurden.
Anmerkung
Ein in Amazon erstelltes Dateisystem EFS wird nur auf Linux-Plattformen unterstützt.
Themen
Schritt 1: Erstellen Sie VPC eine AWS CloudFormation
Erstellen Sie Ihre VPC mit einer AWS CloudFormation Vorlage.
-
Folgen Sie den Anweisungen AWS CloudFormation VPC-Vorlage unter, AWS CloudFormation um eine zu erstellenVPC.
Anmerkung
Die mit dieser AWS CloudFormation Vorlage VPC erstellte hat zwei private Subnetze und zwei öffentliche Subnetze. Sie dürfen private Subnetze nur verwenden, wenn Sie das Dateisystem mounten AWS CodeBuild , das Sie in Amazon EFS erstellt haben. Bei Verwendung eines der öffentlichen Subnetze schlägt der Build fehl.
Melden Sie sich bei der an AWS Management Console und öffnen Sie die VPC Amazon-Konsole unter https://console.aws.amazon.com/vpc/
. -
Wählen Sie die aus, mit der VPC Sie erstellt haben AWS CloudFormation.
-
Notieren Sie sich auf der Registerkarte Beschreibung den Namen VPC und die zugehörige ID. Beide Werte werden später beim Erstellen des AWS CodeBuild -Projekts in diesem Beispiel benötigt.
Schritt 2: Erstellen Sie ein Amazon Elastic File System-Dateisystem mit Ihrem VPC
Erstellen Sie ein einfaches EFS Amazon-Dateisystem für dieses Beispiel mit dem, das VPC Sie zuvor erstellt haben.
Melden Sie sich bei der an AWS Management Console und öffnen Sie die EFS Amazon-Konsole unter https://console.aws.amazon.com/efs/
. -
Wählen Sie Create file system (Dateisystem erstellen) aus.
-
Wählen Sie VPCunter den VPC Namen aus, den Sie sich zuvor in diesem Beispiel notiert haben.
-
Lassen Sie die Availability Zones für Ihre Subnetze ausgewählt.
-
Wählen Sie Next Step (Weiter) aus.
-
Geben Sie unter Tags hinzufügen für den Standardschlüssel Name im Feld Wert den Namen Ihres EFS Amazon-Dateisystems ein.
-
Lassen Sie Bursting und General Purpose (Universal) als Standardleistungs- und -durchsatzmodus ausgewählt. Wählen Sie dann Next Step (Nächster Schritt) aus.
-
Wählen Sie unter Configure client access (Client-Zugriff konfigurieren) die Option Next Step (Nächster Schritt).
-
Klicken Sie auf Create File System (Dateisystem erstellen).
-
(Optional) Wir empfehlen, Ihrem EFS Amazon-Dateisystem eine Richtlinie hinzuzufügen, die die Verschlüsselung von Daten bei der Übertragung durchsetzt. Wählen Sie in der EFS Amazon-Konsole Dateisystemrichtlinie, dann Bearbeiten, aktivieren Sie das Kästchen Verschlüsselung während der Übertragung für alle Clients erzwingen und wählen Sie dann Speichern aus.
Schritt 3: Erstellen Sie ein CodeBuild Projekt zur Verwendung mit Amazon EFS
Erstellen Sie ein AWS CodeBuild Projekt, das das verwendet, das VPC Sie zuvor in diesem Beispiel erstellt haben. Wenn der Build ausgeführt wird, hängt er das zuvor erstellte EFS Amazon-Dateisystem ein. Als Nächstes speichert es die von Ihrer Java-Anwendung erstellte .jar-Datei im Mountingpunkt-Verzeichnis Ihres Dateisystems.
Öffnen Sie die AWS CodeBuild Konsole unter https://console.aws.amazon.com/codesuite/codebuild/home
. -
Wählen Sie im Navigationsbereich Build projects (Build-Projekte) gefolgt von Create build project (Build-Projekt erstellen) aus.
-
Geben Sie im Feld Projektname einen Namen für Ihr Projekt an.
-
Wählen Sie unter Source provider (Quellanbieter) das Repository aus, in dem sich die zu erstellende Java-Anwendung befindet.
-
Geben Sie Informationen ein, z. B. ein RepositoryURL, das zum Auffinden CodeBuild Ihrer Anwendung verwendet wird. Die Optionen unterscheiden sich je nach Quellanbieter. Weitere Informationen finden Sie unter Choose source provider.
-
Wählen Sie unter Environment image (Umgebungs-Image) die Option Managed image (Verwaltetes Image) aus.
-
Wählen Sie unter Operating system (Betriebssystem) die Option Amazon Linux 2 aus.
-
Wählen Sie unter Runtime(s) (Laufzeit(en)) die Option Standard aus.
-
Wählen Sie unter Image die Option aws/codebuild/amazonlinux2-x86_64-standard:4.0 aus.
-
Wählen Sie für Environment type (Umgebungstyp) die Option Linux aus.
-
Wählen Sie unter Service role (Servicerolle) die Option New service role (Neue Servicerolle) aus. Geben Sie im Feld Rollenname einen Namen für die Rolle ein, die für Sie erstellt wurde. CodeBuild
-
Erweitern Sie Additional configuration (Zusätzliche Konfiguration).
-
Wählen Sie Enable this flag if you want to build Docker images or want your builds to get elevated privileges (Dieses Flag aktivieren, wenn Docker-Abbilder erstellt oder die Builds erweiterte Berechtigungen erhalten sollen) aus.
Anmerkung
Standardmäßig ist der Docker-Daemon für VPC Nicht-Builds aktiviert. Wenn Sie Docker-Container für VPC Builds verwenden möchten, finden Sie auf der Docker Docs-Website unter Runtime Privilege and Linux Capabilities
weitere Informationen und aktivieren Sie den privilegierten Modus. Außerdem unterstützt Windows den privilegierten Modus nicht. -
Wählen Sie VPCunter die VPC ID aus.
-
Wählen Sie unter Subnetze eines oder mehrere der privaten Subnetze aus, die Ihrem zugeordnet sind. VPC Sie müssen private Subnetze in einem Build verwenden, der ein EFS Amazon-Dateisystem mountet. Bei Verwendung eines öffentlichen Subnetzes schlägt der Build fehl.
-
Wählen Sie unter Security groups (Sicherheitsgruppen) die Standardsicherheitsgruppe aus.
-
Geben Sie unter File systems (Dateisysteme) die folgenden Informationen ein:
-
Geben Sie unter Identifier (Bezeichner), einen eindeutigen Dateisystembezeichner ein. Es darf weniger als 129 Zeichen lang sein und darf nur alphanumerische Zeichen und Unterstriche enthalten. CodeBuild verwendet diesen Bezeichner, um eine Umgebungsvariable zu erstellen, die das elastische Dateisystem identifiziert. Das Format der Umgebungsvariablen ist
CODEBUILD_
in Großbuchstaben. Wenn Sie beispielsweise<file_system_identifier>
my_efs
eingeben, lautet die UmgebungsvariableCODEBUILD_MY_EFS
. -
Wählen Sie für ID die Dateisystem-ID aus.
-
(Optional) Geben Sie ein Verzeichnis im Dateisystem ein. CodeBuild hängt dieses Verzeichnis ein. Wenn Sie den Verzeichnispfad leer lassen, wird CodeBuild das gesamte Dateisystem eingehängt. Der Dateipfad ist relativ zum Stamm des Dateisystems.
-
Geben Sie als Einhängepunkt den absoluten Pfad des Verzeichnisses in Ihrem Build-Container ein, in dem das Dateisystem eingehängt ist. Wenn dieses Verzeichnis nicht existiert, CodeBuild wird es während des Builds erstellt.
-
(Optional) Geben Sie Mountingoptionen ein. Wenn Sie das Feld Einhängeoptionen leer lassen, CodeBuild werden die Standard-Einhängeoptionen verwendet:
nfsvers=4.1 rsize=1048576 wsize=1048576 hard timeo=600 retrans=2
Weitere Informationen finden Sie unter Empfohlene NFS Bereitstellungsoptionen im Amazon Elastic File System-Benutzerhandbuch.
-
-
Wählen Sie unter Build specification (Build-Spezifikation) die Option Insert build commands (Build-Befehle einfügen) und anschließend Switch to editor (Zum Editor wechseln) aus.
-
Geben Sie die folgenden Build-Spezifikationsbefehle in den Editor ein. Ersetzen Sie
durch den Bezeichner, den Sie in Schritt 17 eingegeben haben. Verwenden Sie Großbuchstaben (z. B.<file_system_identifier>
CODEBUILD_MY_EFS
).version: 0.2 phases: install: runtime-versions: java: corretto11 build: commands: - mvn compile -Dgpg.skip=true -Dmaven.repo.local=$CODEBUILD_
<file_system_identifier>
-
Verwenden Sie für alle anderen Einstellungen die Standardwerte und wählen Sie Create build project (Build-Projekt erstellen) aus. Wenn Ihr Build abgeschlossen ist, wird die Konsolenseite für Ihr Projekt angezeigt.
-
Wählen Sie Start build (Build starten).
Schritt 4: Überprüfen Sie das Build-Projekt
Nachdem Ihr AWS CodeBuild Projekt erstellt wurde:
-
Sie haben eine von Ihrer Java-Anwendung erstellte JAR-Datei, die für Ihr EFS Amazon-Dateisystem in Ihrem Mount-Point-Verzeichnis erstellt wurde.
-
Eine Umgebungsvariable, die Ihr Dateisystem identifiziert, wird mithilfe der beim Erstellen des Projekts eingegebenen Dateisystembezeichner erstellt.
Weitere Informationen finden Sie unter Mounten von Dateisystemen im Amazon Elastic File System-Benutzerhandbuch.