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.
Rezepte in Image Builder verwalten
Ein EC2 Image Builder-Rezept ist die Blaupause für die Erstellung eines benutzerdefinierten Maschinenimages. Ein Rezept spezifiziert drei Schlüsselelemente:
-
Basisimage — Der Ausgangspunkt für Ihr Image (ein AMI, ein Container-Image oder eine importierte VM).
-
Komponenten — Die Erstellungs- und Testschritte, mit denen Ihr Image angepasst wird. Die Komponenten sind optional. Dieses Design unterstützt Workflows, die ausschließlich zum Testen und zur Verteilung bestimmt sind.
-
Konfiguration — Speichervolumes, Instanzeinstellungen, das Arbeitsverzeichnis und andere Parameter zur Build-Zeit.
Image Builder unterstützt zwei Arten von Rezepten:
-
Image-Rezepte erzeugen Amazon Machine Images (AMIs), die Sie zum Starten von Amazon EC2-Instances verwenden können.
-
Container-Rezepte erzeugen Docker Container-Images, die in Amazon ECR-Repositorys gespeichert sind.
Rezepte sind unveränderlich. Nachdem Sie ein Rezept erstellt haben, können Sie es nicht mehr ändern oder ersetzen. Um Komponenten oder eine andere Konfiguration zu aktualisieren, müssen Sie ein neues Rezept oder eine neue Rezeptversion erstellen. Image Builder behält alle früheren Versionen bei. Auf diese Weise können Sie die Herkunft der Bilder bis zu dem exakten Rezept zurückverfolgen, das zu jeder Ausgabe geführt hat. Sie können Ihre vorhandenen Rezepte jederzeit mit Tags versehen. Weitere Informationen zum Taggen Ihrer Ressourcen mithilfe von Image Builder-Befehlen finden Sie im AWS CLIMarkieren von Ressourcen Abschnitt dieses Handbuchs.
Tipp
Sie können die von Amazon verwalteten Komponenten in Ihren Rezepten verwenden oder Ihre eigenen benutzerdefinierten Komponenten entwickeln. Weitere Informationen finden Sie unter Entwickeln Sie benutzerdefinierte Komponenten für Ihr Image Builder Builder-Image. Für Image-Rezepte, die Ausgabe-AMIs erstellen, können Sie auch AWS Marketplace Image-Produkte und -Komponenten verwenden. Weitere Informationen zur Integration mit AWS Marketplace Produkten finden Sie unterAWS Marketplace Integration in Image Builder.
Verwenden Sie die Themen in diesem Abschnitt, um Ihre EC2 Image Builder-Rezepte zu verwalten, einschließlich der Auflistung vorhandener Rezepte, der Anzeige ihrer Details und der Erstellung neuer Rezeptversionen.
Inhalt
Bildrezepte im Vergleich zu Container-Rezepten
In der folgenden Tabelle werden die Funktionen von Image-Rezepten und Container-Rezepten verglichen.
| Feature | Bildrezept | Rezept für Behälter |
|---|---|---|
| Ausgabe | AMI | DockerContainer-Bild in Amazon ECR |
| Basis-Bildquellen | AMI-ID, Image Builder-Image-ARN, SSM-Parameter, Produkt AWS Marketplace | Docker HubBild, Amazon ECR-Bild, Bild, Amazon-managed Image Builder-Bild-ARN |
| Dockerfile | Nicht zutreffend | Erforderlich (Vorlage mit kontextuellen Variablen) |
| Ziel-Repository | Nicht zutreffend | Amazon ECR (erforderlich) |
| Speicherkonfiguration | Blockieren Sie Gerätezuordnungen für das Ausgabe-AMI | Blockieren Sie Gerätezuordnungen für die Build-Instance |
| Benutzerdaten | Unterstützt (überschreibt Standard-Cloud-Init) | Wird auf Rezepturebene nicht unterstützt |
| Steuerung durch Agents durch Systems Manager | Konfigurierbar (Deinstallation nach dem Build) | Nicht konfigurierbar |
| AWS Marketplace Komponenten | Unterstützt | Nicht unterstützt |
| Plattform überschreiben | Nicht zutreffend (anhand von AMI erkannt) | Verfügbar für Amazon ECR und Bilder Docker Hub |
Versionierung von Rezepten
<major>Jedes Rezept verwendet die semantische Versionierung im Format. <minor>. <patch>. Jeder Versionsknoten akzeptiert Werte von 0 bis 1.073.741.823 (2^30 - 1).
Sie können einen Platzhalter (x) an einer Position verwenden, um die automatische Versionsinkrementierung zu aktivieren. Wenn Sie ein Rezept mit einer Wildcard-Version erstellen, ersetzt Image Builder die Version x durch die nächste verfügbare Nummer für diese Position.
| Muster | Behavior | Beispielsequenz |
|---|---|---|
1.0.x |
Erhöht die Patch-Nummer | 1.0.1, 1.0.2, 1.0.3,... |
1.x.0 |
Erhöht die Nebenzahl | 1.1.0, 1.2.0, 1.3.0,... |
x.0.0 |
Erhöht die Hauptzahl | 1.0.0, 2.0.0, 3.0.0,... |
Die folgenden Regeln gelten für Wildcard-Versionen:
-
Pro Versionszeichenfolge ist nur ein
xPlatzhalter zulässig. -
Der Platzhalter kann an einer beliebigen Position (Major, Minor oder Patch) vorkommen.
-
Bei den numerischen Werten an den verbleibenden Positionen muss es sich um explizite Ganzzahlen handeln.
Tipp
Verwenden Sie Versionen mit Platzhaltern in Ihrer CI/CD Automatisierung, damit Sie Rezeptversionen nicht manuell nachverfolgen und inkrementieren müssen. Jedes Mal, wenn Sie ein Rezept mit demselben Platzhalter erstellen, löst Image Builder die nächste verfügbare Version auf. Zum Beispiel ein Rezept, das immer 1.0.x Resolves to 1.0.11.0.2, then usw. verwendet. Weitere Informationen zur semantischen Versionierung für Image Builder-Ressourcen finden Sie unter. Semantische Versionierung in Image Builder
Einschränkungen und Grenzwerte für Rezepte
Bevor Sie ein Rezept erstellen, sollten Sie die folgenden Einschränkungen überprüfen.
| Einschränkung | Limit | Hinweise |
|---|---|---|
| Komponenten pro Rezept | 20 (Standard) | Beinhaltet sowohl Build- als auch Testkomponenten. Sie können eine Erhöhung beantragen über AWS Support. |
| Maximale Rezeptgröße | 25 KB | Die kumulative Größe aller Komponentenkonfigurationen, einschließlich der Parameterwerte. |
| Produktcodes pro Ausgabebild | 9 | Kombiniert aus dem Basisbild und den AWS Marketplace Komponenten. |
| Einzigartigkeit der Komponente | Eine pro Rezept | Dieselbe Komponente (unabhängig von der Version) kann nur einmal vorkommen. |
| Maximum an Versionsknoten | 1.073.741.823 | Pro Knoten (Major, Minor oder Patch). |
| Name des Rezepts | Kann nicht geändert werden | Der Name ist nach der Erstellung festgelegt. Erstelle ein neues Rezept für einen anderen Namen. |
Die Komponenten müssen außerdem die folgenden Kompatibilitätsanforderungen erfüllen:
-
Die Komponenten müssen der Plattform des Rezepts entsprechen (Linux, Windows oder macOS).
-
Die Komponenten müssen die Betriebssystemversion des übergeordneten Images unterstützen, sofern Metadaten zur Betriebssystemversion verfügbar sind.
-
Komponenten mit dem
DISABLEDStatusDEPRECATEDODER können nicht zu neuen Rezepten hinzugefügt werden. -
CIS-Härtungskomponenten benötigen ein CIS-published übergeordnetes Image.
Bereinigen von Ressourcen
Stellen Sie sicher, dass Sie die Ressourcen und Pipelines, die Sie anhand der Beispiele in diesem Handbuch erstellt haben, bereinigen, um unerwartete Kosten zu vermeiden. Weitere Informationen zum Löschen von Ressourcen in Image Builder finden Sie unterLöschen Sie veraltete oder ungenutzte Image Builder Builder-Ressourcen.