Déploiement de charges de travail d'application à partir d'images dans un registre public
Déployez votre application avec Code Engine. Vous pouvez créer une application depuis la console ou avec l'interface de ligne de commande.
Déploiement d'une application à partir de la console
Déployez une application avec une image d'un registre public qui ne requiert pas de données d'identification avec la console deCode Engine .
Cet exemple fait référence à l'imageicr.io/codeengine/helloworld publique dans IBM Cloud® Container Registry. Vous pouvez également référer une image dans un concentrateur
Docker public ou une Image dans un registre privé.
- Ouvrez la console Code Engine.
- Sélectionnez « Commencer la création ».
- Sélectionnez un projet dans la liste des projets disponibles. Vous pouvez aussi en créer un. Vous devez disposer d'un projet sélectionné pour déployer une application.
- Sélectionnez Application.
- Entrez un nom pour l'application. Affectez à votre application un nom qui est unique dans le projet.
- Indiquez une image de conteneur pour votre application, par exemple,
icr.io/codeengine/helloworld. Si vous disposez de votre propre code source que vous souhaitez transformer en image de conteneur pour l'application, consultez la section « Planification de votre build ». Pour plus d'informations sur le code utilisé pour cet exemple, voirhelloworld. - Modifiez les valeurs par défaut des paramètres de nœud final ou d'exécution. Pour plus d'informations sur ces options, voir Options de visibilité du nœud final des applications et Options de déploiement d'une application.
- Cliquez sur Créer.
- Lorsque l'application prend le statut Prêt, vous pouvez la tester. Cliquez sur Tester l'application, puis sur Envoyer une demande dans le panneau de test de l'application. Pour ouvrir l'application dans une page Web, cliquez sur URL de l'application.
Maintenant que votre application est déployée, vous avez accès à des informations sur ses révisions et sur les instances en cours d'exécution, ainsi qu'aux détails de configuration.
Déploiement d'une application via l'interface de ligne de commande
Pour créer et déployer votre application via l'interface de ligne de commande, utilisez la commande app create. Cette commande requiert un nom et une image et admet d'autres arguments. Pour obtenir la liste complète
des options, voir la commande ibmcloud ce app create.
Avant de commencer
- Configurez votre environnement d'interface de ligne de commande Code Engine.
- Créez et utilisez un projet.
La commande application create suivante crée et déploie une application nommée myapp et utilise l'image de conteneur icr.io/codeengine/hello.
ibmcloud ce application create --name myapp --image icr.io/codeengine/hello
Exemple de sortie
Creating application 'myapp'...
OK
[...]
Run 'ibmcloud ce application get -n myapp' to check the application status.
OK
https://myapp.4idmmq6xpss.us-south.codeengine.appdomain.cloud
Le tableau suivant récapitule les options utilisées avec la commande app create dans cet exemple. Pour plus d'informations sur la commande et ses options, voir la commande ibmcloud ce app create.
| Option | Description |
|---|---|
--name |
Nom de l'application. Utilisez un nom unique dans le projet. Cette valeur est requise. -Le nom doit commencer par une lettre minuscule. -Le nom doit se terminer par un caractère alphanumérique en minuscules. -Le nom doit comporter 55 caractères ou moins et peut contenir des lettres, des nombres et des traits d'union (-). |
--image |
Nom de l'image utilisée pour cette application. Cette valeur est obligatoire. Le format est REGISTRY/NAMESPACE/REPOSITORY:TAG, où REGISTRY et TAG sont facultatifs. Si TAG n'est pas spécifié,
la valeur par défaut est latest. Pour les images hébergées sur Docker Hub, vous pouvez spécifier l'image à l'aide de NAMESPACE/REPOSITORY,
car la valeur par défaut pour Registry est docker.io. Pour les autres registres, utilisez REGISTRY/NAMESPACE/REPOSITORY ou REGISTRY/NAMESPACE/REPOSITORY:TAG. |
Etapes suivantes
-
Après le déploiement de votre application, accédez à votre application via une URL.
-
Vous pouvez créer un mappage de domaine personnalisé et l'affecter à votre application. Pour plus d'informations sur le déploiement d'applications dans plusieurs régions avec un nom de domaine personnalisé, voir Configuration d'une application à haute disponibilité.
-
Maintenant que votre application est déployée, pensez à la rendre orientée événements. En utilisant des abonnements à des événements, vous pouvez déclencher vos applications par des plannings périodiques ou définir votre application pour qu'elle réagisse à des événements tels que des téléchargements de fichiers ou des messagesKafka.
Une fois votre application déployée, vous pouvez mettre à jour votre application déployée et son code référencé avec n'importe quelle manière suivante, indépendamment de la façon dont vous avez créé ou mis à jour votre application :
-
Si vous disposez d'une image de conteneur conforme à la norme Open Container Initiative(OCI), il vous suffit alors de fournir une référence à cette image, qui pointe vers l'emplacement de votre registre de conteneurs, lors du déploiement de votre application. Vous pouvez déployer votre application avec une image dans un registre public ou un registre privé.
Si vous avez créé votre application à l'aide de la commande
app createet que vous avez spécifié l'option--build-sourcepour générer l'image de conteneur à partir de la source locale ou du référentiel et que vous souhaitez modifier votre application pour qu'elle pointe vers une autre image de conteneur, vous devez d'abord supprimer l'association de la génération de votre application. Par exemple, exécutezibmcloud ce application update -n APP_NAME --build-clear. Après avoir retiré l'association de la génération de votre application, vous pouvez mettre à jour l'application pour référencer une image différente. -
Si vous démarrez avec le code source qui réside dans un référentiel Git, vous pouvez choisir de laisser Code Engine prendre soin de construire l'image à partir de votre source et de déployer l'application avec une opération unique. Dans ce scénario, Code Engine télécharge votre image sur IBM Cloud® Container Registry. Pour en savoir plus, reportez-vous à la section Déploiement de votre application à partir du code source du référentiel. Si vous souhaitez plus de contrôle sur la génération de votre image, vous pouvez choisir de créer l'image avec Code Engine avant de déployer votre application.
-
Si vous démarrez avec le code source résidant sur un poste de travail en local, vous pouvez choisir de laisser Code Engine prendre soin de construire l'image à partir de votre source et de déployer l'application avec une commande CLI unique. Dans ce scénario, Code Engine télécharge votre image sur IBM Cloud® Container Registry. Pour en savoir plus, reportez-vous à la section Déploiement de votre application à partir du code source local avec l'interface de ligne de commande. Si vous souhaitez plus de contrôle sur la génération de votre image, vous pouvez choisir de créer l'image avec Code Engine avant de déployer votre application.
Par exemple, vous pouvez choisir de laisser Code Engine gérer la génération de votre source locale pendant que vous faites évoluer le développement de votre source pour l'application. Ensuite, après la maturation de l'image, vous pouvez mettre à jour l'application déployée pour faire référence à l'image spécifique que vous voulez. Vous pouvez répéter ce processus si nécessaire.
Lorsque vous déployez votre application mise à jour, la dernière version de votre image de conteneur référencée est téléchargée et déployée, sauf si une balise est spécifiée pour l'image. Si une balise est spécifiée pour l'image, l'image balisée est utilisée pour le déploiement.
Vous recherchez d'autres exemples de code ? Découvrez le site Exemples pour le dépôt « IBM Cloud Code Engine GitHub ».