Configuration de votre pipeline pour créer de nouvelles images Docker
Docker peut créer de nouvelles images en lisant les instructions d'un Dockerfile. Préparez un Dockerfile pour prendre une image Docker de base et ajouter du code à partir de votre package de personnalisation pour créer une nouvelle image Docker.
Avant de commencer
- Assurez-vous que Docker est installé.
- Créez le package de personnalisation qui inclut les actifs personnalisés.
Procédure
Créez un script qui peut être utilisé par votre pipeline pour effectuer les étapes suivantes.
- Tirez le dernier package personnalisé du référentiel d'artefacts et extrayez le package dans un dossier appelé CusDeploy.
- Créez un Dockerfile au même niveau que le dossier CusDeploy.
-
Ajoutez le texte suivant au fichier Dockerfile et mettez-le à jour avec vos valeurs.
FROM docker_url/library/source_image_name:source_image_tag COPY CusDeploy /SETUP/Cus RUN /SETUP/bin/applyCustomization.sh <other_RunEngine_commands>- docker_url
- Nom d'hôte du référentiel Docker où obtenir l'image source.
- bibliothèque
- Chemin d'accès à votre image source dans le référentiel.
- source_image_name
- Nom de l'image source. Par exemple, ts-app, ts-web, crs-app, search-app, xc-app.
- source_image_tag
- Balise de l'image source que vous souhaitez utiliser.
- other_RunEngine_commands
- (Facultatif) Vous pouvez spécifier des commandes pour configurer l'application dans l'image Docker. Par exemple, vous pouvez ajouter des commandes pour définir la source de données afin que l'application puisse se connecter à votre base de données. Pour plus d'informations sur les commandes Run Engine, voir Commandes Run Engine.
- L'argument FROM spécifie quelle image Docker de base doit être mise à jour.
- L'argument RUN fait référence à un script shell qui indique comment appliquer le package de personnalisation à l'image de base.
Par exemple,FROM myDockerRegisty.com/commerce/ts-app:latest COPY CusDeploy /SETUP/Cus RUN /SETUP/bin/applyCustomization.sh -
Générez la nouvelle image Docker.
Par exemple, exécutez la commande suivante.
Vous voulez probablement que l'image <target_image_name> soit la même que l'image source_image_name. Selon la façon dont vous souhaitez conserver vos images Docker dans le référentiel, vous pouvez également utiliser la même balise ou spécifier une balise unique telle que l'horodatage de la génération.docker build -t <target_image_name>:<tag> - Répétez les étapes 2 à 4 pour les autres images Docker que vous devez mettre à jour.
- Transmettez les nouvelles images Docker vers votre référentiel Docker.