Créez une configuration de génération qui extrait la source à partir d'un répertoire local
Si votre source se trouve sur votre poste de travail local, créez une configuration de génération avec des paramètres qui incluent des informations sur l'emplacement de l'extraction à partir du répertoire local. Pour la sortie de génération, vous pouvez spécifier les détails du registre ou laisser Code Engine gérer les détails de IBM Cloud Container Registry.
Vous pouvez créer une configuration de génération qui extrait la source à partir d'un répertoire local à l'aide de l'interface de ligne de commande Code Engine.
Lorsque vous soumettez une génération qui extrait du code à partir d'un répertoire local, votre code source est compressé dans un fichier archive et téléchargé sur votre instance IBM Cloud Container Registry. Notez que vous ne pouvez cibler IBM Cloud Container Registry que pour vos générations locales. L'image source est créée dans le même espace de nom que votre image de génération.
Vous pouvez ignorer certains modèles de fichier de votre code source en utilisant le fichier .ceignore, qui se comporte de la même manière qu'un fichier .gitignore. Par exemple, les entrées d'un fichier .ceignorepour
une application node.js peuvent inclure node_moduleset.npm. Pour plus d'exemples de modèles de fichier à ignorer, voir le référentielGitHub.gitignore.
La création d'une configuration de génération ne crée pas d'image mais crée la configuration pour générer une image. Vous devez alors exécuter une génération qui fait référence à la configuration de génération pour créer une image. La configuration de génération n'est pas validée ou utilisée pour créer une image tant que la génération n'est pas exécutée. La configuration de génération permet plusieurs générations ultérieures d'une image, par exemple lorsque des modifications sont appliquées au référentiel source.
Pour créer une configuration de génération qui extrait le code d'un répertoire local à l'aide de l'interface de ligne de commande, utilisez la commande build create et spécifiez build-type comme local.
Pour obtenir la liste complète des options, voir la commande ibmcloud ce build create.
Avec la commande build create, vous pouvez demander à Code Engine de générer l'image à partir de votre source et de la stocker dans IBM Cloud Container Registry. Pour ce cas d' accès automatique, vous n'avez
pas besoin de spécifier un secret de registre ou l'emplacement du registre d'images. Vous pouvez également spécifier l'emplacement de votre sortie d'image de génération et fournir un secret de registre pour que Code Engine puisse accéder au
résultat de génération et l'envoyer à votre registre.
Création d'une configuration de génération avec l'interface de ligne de commande (avec une source locale et un accès automatique au registre)
Dans ce scénario, Code Engine génère une image à partir de votre source locale et télécharge automatiquement l'image sur IBM Cloud Container Registry. Voir Configuration des droits pour les registres d'images pour plus d'informations sur la définition des droits requis pour Code Engine pour accéder automatiquement à ces images dans Container Registry.
Avant de commencer
- Configurez votre environnement d'interface de ligne de commande Code Engine.
- Créez et utilisez un projet.
Créez une configuration de génération pour générer une image à partir de la source sur votre poste de travail local et laissez Code Engine stocker automatiquement et accéder à l'image. Lorsque vous spécifiez localcomme valeur pour-build-type,
vous ne pouvez cibler IBM Cloud Container Registry que pour la sortie de votre génération locale. Dans cet exemple, la commande utilise la stratégie dockerfile par défaut et la taille de génération medium par défaut.
Si vous ne spécifiez pas l'emplacement du registre d'images ou d'un secret de registre, Code Engine envoie la sortie de génération à IBM Cloud Container Registry avec un accès automatique.
ibmcloud ce build create --name build-local-dockerfile --build-type local
Après avoir créé la configuration de génération, vous devez exécuter la génération pour créer le fichier image. Une fois votre fichier image créé, vous pouvez déployer une application ou exécuter un travail avec votre fichier image nouvellement généré.
Création d'une configuration de génération avec l'interface de ligne de commande (avec la source locale et l'accès fourni par l'utilisateur au registre)
Dans ce scénario, Code Engine génère une image à partir de votre source locale, puis télécharge l'image dans votre registre de conteneur avec l'accès au registre que vous fournissez.
Avant de commencer
- Configurez votre environnement d'interface de ligne de commande Code Engine.
- Créez et utilisez un projet.
- Créez un secret de registre pour pouvoir enregistrer votre image.
Créez une configuration de génération pour générer une image à partir de la source sur votre poste de travail local et spécifiez l'emplacement du registre d'images pour la sortie de génération avec un secret de registre. Avec la commande**build create**,
lorsque vous spécifiezlocal comme valeur pour--build-type, vous ne pouvez cibler IBM Cloud Container Registry que pour la sortie de votre génération locale. Indiquez l'option --imagepour indiquer l'emplacement
du registre d'images et spécifiez l'option --registry-secretpour accéder au registre. Dans cet exemple, la commande utilise la stratégie dockerfile par défaut et la taille de génération medium par défaut.
ibmcloud ce build create --name build-local-dockerfile --build-type local --image us.icr.io/mynamespace/codeengine-build --registry-secret myregistry
Après avoir créé la configuration de génération, vous devez exécuter la génération pour créer le fichier image. Une fois votre fichier image créé, vous pouvez déployer une application ou exécuter un travail avec votre fichier image nouvellement généré.