Cette page a été traduite par l'API Cloud Translation.
Switch to English

Exécuter une application Kubernetes

Cloud Code vous permet d'exécuter facilement votre application sur un cluster Kubernetes et de l'afficher en direct à l'aide de skaffold dev. Vous pouvez exécuter votre application sur un cluster local (par exemple, Minikube ou Docker Desktop), Google Kubernetes Engine ou tout autre fournisseur cloud.

Exécuter l'application

  1. Choisissez la commande Run on Kubernetes (Exécuter sur Kubernetes) à l'aide de la barre d'état Cloud Code.
  2. Si votre application ne dispose pas de la configuration skaffold nécessaire ou d'une configuration de lancement cloudcode.kubernetes, Cloud Code vous aidera à les configurer.
  3. Confirmez si vous souhaitez utiliser le contexte Kubernetes actuel pour exécuter l'application (ou en choisir un autre).
  4. Si le contexte choisi correspond à un cluster distant, vous serez invité à fournir un registre d'images dans lequel les images seront envoyées.

    Voici des exemples qui indiquent comment spécifier l'emplacement de stockage des images de conteneurs pour certains registres courants :

    Docker Hub docker.io/{account}
    Assurez-vous d'être correctement authentifié si vous utilisez un dépôt Docker Hub privé.
    Google Container Repository (GCR) gcr.io/{project_id}

    Cloud Code concatène ce registre d'images avec le nom d'image spécifié dans les fichiers manifeste Kubernetes afin de générer le nom final du dépôt d'images.

    Pour plus d'informations, consultez le guide de gestion des registres d'images.

    Ce choix est stocké dans votre configuration de lancement cloudcode.kubernetes (disponible dans .vscode/launch.json).

  5. Cloud Code crée ensuite vos conteneurs, les transfère dans le registre, applique les configurations Kubernetes au cluster et attend le déploiement.

  6. Une fois le déploiement terminé, Cloud Code transfère automatiquement tous les ports de conteneur déclarés vers votre ordinateur et affiche les URL dans la fenêtre de sortie afin que vous puissiez parcourir votre application en ligne.

    Transfert des ports et affichage des URL dans la fenêtre de sortie

  7. Par défaut, Cloud Code surveille en permanence le système de fichiers pour détecter les modifications apportées à vos fichiers (fichiers de configuration ou du code Kubernetes), recrée les conteneurs et redéploie l'application dans le cluster, si bien que les modifications sont appliquées quasiment en temps réel. Vous pouvez modifier ce comportement à l'aide de l'option watch dans votre configuration de lancement.

  8. Une fois votre session terminée, d'autres options de menu contextuel sont disponibles pour surveiller votre application et ses ressources à l'aide de la barre d'état Cloud Code, y compris:

    • Ouvrir les journaux de déploiement:ouvrez les journaux d'application d'un déploiement spécifique à l'aide de la visionneuse de journaux Cloud Code.
    • URL ouverte du service:ouvrez l'URL du service d'application d'un service spécifique dans un navigateur Web.
    • Turn / off watch mode (Activer/Désactiver le mode Watch) : permet d'activer ou de désactiver le mode de lecture pour la session en cours (non disponible pour les sessions de débogage).

      Options disponibles via la barre d'état Cloud Code: en plus des actions standards de Cloud Code, ouvrez les journaux de déploiement, ouvrez l'URL du service et du mode Lecture,

  9. Pour arrêter l'exécution de l'application, cliquez sur l'icône d'arrêt dans la barre d'outils de débogage.

    Une fois l'application arrêtée, toutes les ressources Kubernetes déployées sont supprimées du cluster. Vous pouvez modifier ce comportement à l'aide de l'option cleanUp dans la configuration de lancement.

Personnaliser la configuration de lancement

Pour configurer l'exécution de votre application, vous pouvez personnaliser votre contenu skaffold.yaml et spécifier les champs suivants dans la configuration cloudcode.kubernetes de votre .vscode/launch.json :

  • skaffoldConfig : spécifiez le fichier de configuration Skaffold, qui contient les paramètres de compilation et de déploiement.
  • profil : indiquez votre profil Skaffold préféré. S'il n'est pas défini, le profil par défaut est utilisé.
  • imageRegister : spécifiez le registre d'images vers lequel transférer les images.
  • watch : surveille les modifications apportées à l'espace de travail et réexécute l'application. À moins qu'il ne soit défini explicitement sur "false", "true" par défaut.
  • cleanUp : supprime les ressources Kubernetes déployées dans le cluster après l'arrêt de l'application. À moins qu'il ne soit défini explicitement sur "false", "true" par défaut.
  • portForward : transfère les ports des ressources Kubernetes exposées de votre cluster vers votre ordinateur local. À moins qu'il ne soit défini explicitement sur "false", "true" par défaut.