View a markdown version of this page

Tutoriel : Création d'un pipeline d'images avec une image de conteneur Docker en sortie à partir de l'assistant de console Image Builder - EC2 Image Builder

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Tutoriel : Création d'un pipeline d'images avec une image de conteneur Docker en sortie à partir de l'assistant de console Image Builder

Ce didacticiel explique comment créer un pipeline automatisé pour créer et gérer une image Docker EC2 Image Builder personnalisée à l'aide de l'assistant de console Créer un pipeline d'images. Pour vous aider à parcourir les étapes de manière efficace, les paramètres par défaut sont utilisés lorsqu'ils sont disponibles et les sections facultatives sont ignorées.

Étape 1 : Spécifier les détails du pipeline

  1. Ouvrez la console EC2 Image Builder à https://console.aws.amazon.com/imagebuilder/ l'adresse.

  2. Pour commencer à créer votre pipeline, choisissez Créer un pipeline d'images.

  3. Dans la section Général, entrez le nom de votre pipeline (obligatoire).

  4. Dans la section Créer un calendrier, vous pouvez conserver les valeurs par défaut pour les options de planification. Notez que le fuseau horaire indiqué pour le calendrier par défaut est le temps universel coordonné (UTC). Pour plus d'informations sur l'heure UTC et pour trouver le décalage correspondant à votre fuseau horaire, voir Abréviations des fuseaux horaires — Liste mondiale.

    Pour les paramètres de mise à jour des dépendances, choisissez l'option Exécuter le pipeline à l'heure planifiée s'il existe des mises à jour des dépendances. Ce paramètre oblige votre pipeline à vérifier les mises à jour avant de démarrer la compilation. S'il n'y a aucune mise à jour, la génération planifiée du pipeline est ignorée.

    Note

    Pour vous assurer que votre pipeline reconnaît les mises à jour et les builds des dépendances comme prévu, vous devez utiliser le versionnement sémantique (x.x.x) pour votre image de base et vos composants. Pour en savoir plus sur la gestion sémantique des versions pour les ressources Image Builder, consultez. Versionnage sémantique dans Image Builder

  5. Cliquez sur Suivant pour passer à l'étape suivante.

Étape 2 : Choisissez la recette

  1. Par défaut, Image Builder utilise la recette existante dans la section Recette. Pour la première fois, choisissez l'option Créer une nouvelle recette.

  2. Dans la section Type d'image, choisissez l'option d'image Docker pour créer un pipeline de conteneurs qui produira une image Docker et la distribuera aux référentiels Amazon ECR dans les régions cibles.

  3. Dans la section Général, saisissez les cases obligatoires suivantes :

    • Nom  : nom de votre recette

    • Version  : version de votre recette (utilisez le format) <major>. <minor>. <patch>, où major, minor et patch sont des valeurs entières). Les nouvelles recettes commencent généralement par1.0.0.

  4. Dans la section Image source, conservez les valeurs par défaut pour Select image, Image Operating System (OS) et Image origin. Il en résulte une liste d'images de conteneurs Amazon Linux 2, gérées par Amazon, parmi lesquelles vous pouvez choisir pour votre image de base.

    1. Dans la liste déroulante Nom de l'image, choisissez une image.

    2. Conservez la valeur par défaut pour Auto-versioning les options (utilisez la dernière version du système d'exploitation disponible).

      Note

      Ce paramètre garantit que votre pipeline utilise le contrôle de version sémantique pour l'image de base, afin de détecter les mises à jour des dépendances pour les tâches planifiées automatiquement. Pour en savoir plus sur la gestion sémantique des versions pour les ressources Image Builder, consultez. Versionnage sémantique dans Image Builder

  5. Dans la section Composants, vous pouvez choisir de ne pas ajouter de composants et de continuer. Si vous souhaitez ajouter des composants, dans le panneau Créer des composants — Amazon Linux, vous pouvez parcourir les composants répertoriés sur la page. Utilisez le contrôle de pagination situé dans le coin supérieur droit pour parcourir les composants supplémentaires disponibles pour votre système d'exploitation d'image de base. Vous pouvez également rechercher des composants spécifiques ou créer votre propre composant de construction à l'aide du gestionnaire de composants.

    Pour ce didacticiel, choisissez un composant qui met à jour Linux avec les dernières mises à jour de sécurité, comme suit :

    1. Filtrez les résultats en saisissant le mot update dans la barre de recherche située en haut du panneau.

    2. Cochez la case correspondant au composant de update-linux compilation.

    3. Faites défiler la page vers le bas et, dans le coin supérieur droit de la liste des composants sélectionnés, choisissez Tout développer.

    4. Conservez la valeur par défaut pour les options de version (utilisez la dernière version du composant disponible).

      Note

      Ce paramètre garantit que votre pipeline utilise le contrôle de version sémantique pour le composant sélectionné, afin de détecter les mises à jour des dépendances pour les tâches planifiées automatiquement. Pour en savoir plus sur la gestion sémantique des versions pour les ressources Image Builder, consultez. Versionnage sémantique dans Image Builder

      Si vous aviez sélectionné un composant qui possède des paramètres d'entrée, les paramètres seraient également visibles dans cette zone. Les paramètres ne sont pas abordés dans ce didacticiel. Pour plus d'informations sur l'utilisation des paramètres d'entrée dans vos composants et leur définition dans vos recettes, consultezTutoriel : Création d'un composant personnalisé avec des paramètres d'entrée.

    Réorganiser les composants (facultatif)

    Si vous avez choisi plusieurs composants à inclure dans votre image, vous pouvez utiliser l'action glisser-déposer pour les réorganiser dans l'ordre dans lequel ils doivent être exécutés pendant le processus de création.

    Note

    Les composants de renforcement CIS ne suivent pas les règles d'ordre standard des composants dans les recettes d'Image Builder. Les composants de renforcement CIS sont toujours exécutés en dernier pour garantir que les tests de référence s'exécutent par rapport à votre image de sortie.

    1. Revenez à la liste des composants disponibles.

    2. Cochez la case correspondant au composant de update-linux-kernel-mainline construction (ou à tout autre composant de votre choix).

    3. Faites défiler la page jusqu'à la liste des composants sélectionnés pour voir s'il y a au moins deux résultats.

    4. Il est possible que la gestion des versions des composants récemment ajoutés ne soit pas étendue. Pour développer les options de version, vous pouvez soit choisir la flèche à côté des options de version, soit activer et désactiver le bouton Tout développer pour étendre la gestion des versions pour tous les composants sélectionnés.

    5. Choisissez l'un des composants et faites-le glisser vers le haut ou vers le bas pour modifier l'ordre dans lequel les composants seront exécutés.

    6. Pour supprimer le update-linux-kernel-mainline composant, sélectionnez-le X dans le coin supérieur droit de la zone du composant.

    7. Répétez l'étape précédente pour supprimer tous les autres composants que vous auriez pu ajouter, en ne laissant que le update-linux composant sélectionné.

  6. Dans la section Modèle Dockerfile, sélectionnez l'option Utiliser un exemple. Dans le panneau Contenu, notez les variables contextuelles dans lesquelles Image Builder place les informations de génération ou les scripts, en fonction de la recette de votre image de conteneur.

    Par défaut, Image Builder utilise les variables contextuelles suivantes dans votre Dockerfile.

     

    Image du parent (obligatoire)

    Au moment de la création, cette variable correspond à l'image de base de votre recette.

    Exemple :

    FROM {{{ imagebuilder:parentImage }}}
    environnements (obligatoire si des composants sont spécifiés)

    Au moment de la génération, cette variable est résolue en fonction des directives Dockerfile qui placent vos composants dans le contexte de génération. Ces directives copient les scripts des composants dans l'image et définissent les variables d'environnement que ces scripts utilisent. Il prépare l'environnement mais n'exécute pas les composants que vous spécifiez. Placez cette variable avant la components variable.

    Exemple :

    {{{ imagebuilder:environments }}}
    composants (en option)

    Au moment de la génération, cette variable correspond à la commande qui exécute les scripts de génération et de test des composants pour les composants inclus dans la recette du conteneur, puis supprime ces scripts de l'image. Il s'agit de la variable qui exécute vos composants. Placez-le après la environments variable.

    Exemple :

    {{{ imagebuilder:components }}}
  7. Dans la section Référentiel cible, indiquez le nom du référentiel Amazon ECR que vous avez créé comme condition préalable à ce didacticiel. Ce référentiel est utilisé comme paramètre par défaut pour la configuration de distribution dans la région où s'exécute le pipeline (région 1).

    Note

    Le référentiel cible doit exister dans Amazon ECR pour toutes les régions cibles avant la distribution.

  8. Cliquez sur Suivant pour passer à l'étape suivante.

Étape 3 : Définition de la configuration de l'infrastructure (facultatif)

Image Builder lance des instances EC2 dans votre compte pour personnaliser les images et exécuter des tests de validation. Les paramètres de configuration de l'infrastructure spécifient les détails de l'infrastructure pour les instances qui seront exécutées dans votre Compte AWS ordinateur pendant le processus de génération.

Dans la section Configuration de l'infrastructure, les options de configuration sont définies par défaut surCreate infrastructure configuration using service defaults. Cela crée un rôle IAM et un profil d'instance associé qui sont utilisés par les instances de build pour configurer vos images de conteneur. Vous pouvez également créer votre propre configuration d'infrastructure personnalisée ou utiliser les paramètres que vous avez déjà créés. Pour plus d'informations sur les paramètres de configuration de l'infrastructure, consultez CreateInfrastructureConfiguration la référence de l'API EC2 Image Builder.

Pour ce didacticiel, nous utilisons les paramètres par défaut.

  • Cliquez sur Suivant pour passer à l'étape suivante.

Étape 4 : définir les paramètres de distribution (facultatif)

Les paramètres de distribution comprennent les régions cibles et le nom du référentiel Amazon ECR cible. Les images Docker de sortie sont déployées dans le référentiel Amazon ECR désigné dans chaque région.

Dans la section Paramètres de distribution, les options de configuration sont définies par défaut surCreate distribution settings using service defaults. Cette option distribuera l'image Docker de sortie au référentiel Amazon ECR spécifié dans votre recette de conteneur pour la région dans laquelle s'exécute votre pipeline (Région 1). Si vous le souhaitezCreate new distribution settings, vous pouvez remplacer le référentiel ECR pour la région actuelle et ajouter d'autres régions à distribuer.

Pour ce didacticiel, nous utilisons les paramètres par défaut.

  • Cliquez sur Suivant pour passer à l'étape suivante.

Étape 5 : Vérifier

La section Révision affiche tous les paramètres que vous avez configurés. Pour modifier les informations d'une section donnée, cliquez sur le bouton Modifier situé dans le coin supérieur droit de la section des étapes. Par exemple, si vous souhaitez modifier le nom de votre pipeline, cliquez sur le bouton Modifier en haut à droite de la section Étape 1 : Détails du pipeline.

  1. Après avoir revu vos paramètres, choisissez Créer un pipeline pour créer votre pipeline.

  2. Vous pouvez voir des messages de réussite ou d'échec en haut de la page, au fur et à mesure que vos ressources sont créées pour les paramètres de distribution, la configuration de l'infrastructure, votre nouvelle recette et le pipeline. Pour voir les détails d'une ressource, y compris son identifiant, choisissez Afficher les détails.

  3. Après avoir consulté les détails d'une ressource, vous pouvez consulter les détails des autres ressources en choisissant le type de ressource dans le volet de navigation. Par exemple, pour voir les détails de votre nouveau pipeline, choisissez Image pipelines dans le volet de navigation. Si votre compilation a été réussie, votre nouveau pipeline est affiché dans la liste des pipelines d'image.

Étape 6 : Nettoyer

Votre environnement Image Builder, tout comme votre maison, nécessite une maintenance régulière pour vous aider à trouver ce dont vous avez besoin et à effectuer vos tâches sans vous encombrer. Veillez à nettoyer régulièrement les ressources temporaires que vous avez créées pour les tests. Sinon, vous pourriez oublier ces ressources et, plus tard, ne plus vous rappeler à quoi elles ont été utilisées. D'ici là, il se peut que vous ne sachiez pas si vous pouvez vous en débarrasser en toute sécurité.

Astuce

Pour éviter les erreurs de dépendance lorsque vous supprimez des ressources, veillez à les supprimer dans l'ordre suivant :

  1. Pipeline d'images

  2. Recette imagée

  3. Toutes les ressources restantes

Pour nettoyer les ressources que vous avez créées pour ce didacticiel, procédez comme suit :

Supprimer le pipeline
  1. Pour consulter la liste des pipelines de génération créés sous votre compte, choisissez Image pipelines dans le volet de navigation.

  2. Cochez la case à côté de Nom du pipeline pour sélectionner le pipeline que vous souhaitez supprimer.

  3. En haut du panneau Pipelines d'images, dans le menu Actions, choisissez Supprimer.

  4. Pour confirmer la suppression, entrez Delete dans la case et choisissez Supprimer.

Supprimer la recette du contenant
  1. Pour consulter la liste des recettes de conteneurs créées sous votre compte, choisissez Recettes de conteneurs dans le volet de navigation.

  2. Cochez la case à côté de Nom de la recette pour sélectionner la recette que vous souhaitez supprimer.

  3. En haut du panneau Recettes du conteneur, dans le menu Actions, choisissez Supprimer la recette.

  4. Pour confirmer la suppression, entrez Delete dans la case et choisissez Supprimer.

Supprimer la configuration de l'infrastructure
  1. Pour consulter la liste des configurations d'infrastructure créées sous votre compte, choisissez Configuration de l'infrastructure dans le volet de navigation.

  2. Cochez la case à côté de Nom de la configuration pour sélectionner la configuration d'infrastructure que vous souhaitez supprimer.

  3. En haut du panneau Configurations de l'infrastructure, choisissez Supprimer.

  4. Pour confirmer la suppression, entrez Delete dans la case et choisissez Supprimer.

Supprimer les paramètres de distribution
  1. Pour consulter la liste des paramètres de distribution créés sous votre compte, choisissez Paramètres de distribution dans le volet de navigation.

  2. Cochez la case à côté de Nom de la configuration pour sélectionner les paramètres de distribution que vous avez créés pour ce didacticiel.

  3. En haut du panneau des paramètres de distribution, choisissez Supprimer.

  4. Pour confirmer la suppression, entrez Delete dans la case et choisissez Supprimer.

Supprimer l'image

Suivez ces étapes pour vérifier que vous avez supprimé toute image créée à partir du pipeline du didacticiel. Il est peu probable que ce didacticiel crée une image à moins que suffisamment de temps ne se soit écoulé depuis la création de votre pipeline pour qu'il s'exécute, conformément au calendrier de construction.

  1. Pour consulter la liste des images créées sous votre compte, choisissez Images dans le volet de navigation.

  2. Choisissez la version de l'image que vous souhaitez supprimer. Cela ouvre la page des versions de création d'images.

  3. Cochez la case à côté de la version pour chaque image que vous souhaitez supprimer. Vous pouvez sélectionner plusieurs versions d'image à la fois.

  4. En haut du panneau Versions de création d'images, choisissez Supprimer la version.

  5. Pour confirmer la suppression, entrez Delete dans la case et choisissez Supprimer.