Utiliser une application existante dans Cloud Code pour Cloud Shell

Cloud Code exploite Skaffold en arrière-plan pour exécuter ou déboguer votre application.

Si une application existante est déjà configurée avec des fichiers manifeste Kubernetes et un fichier Dockerfile pour créer vos images, vous pouvez l'ouvrir et l'utiliser avec Cloud Code.

La seule configuration supplémentaire nécessaire est une configuration Skaffold et une configuration de lancement de type cloudcode.kubernetes. Cloud Code vous aide à les créer lorsque vous exécutez ou déboguez votre application pour la première fois.

Paramétrer la configuration

Si votre application dispose d'un fichier Dockerfile, mais ne possède pas les configurations Skaffold et de lancement nécessaires, procédez comme suit :

  1. Dans la barre d'état Cloud Code, cliquez sur le nom du projet actif.

    Nom du projet actif dans la barre d'état

  2. Dans le menu de sélection rapide qui s'affiche, sélectionnez Run on Kubernetes (Exécuter sur Kubernetes) ou Debug on Kubernetes (Déboguer sur Kubernetes).

  3. Dans la boîte de dialogue "Run/Debug on Kubernetes" (Exécuter/Déboguer sur Kubernetes), spécifiez le compilateur souhaité et ses paramètres. Vous pouvez également personnaliser le nom de votre configuration.

  4. Cliquez sur Debug (Déboguer) ou Run (Exécuter).

    La nouvelle configuration de lancement skaffold.yaml et cloudcode.kubernetes est ajoutée à votre espace de travail et votre application s'exécute ou est prête à être déboguée.

Établir une configuration pour les applications qui possèdent déjà skaffold.yaml

Si votre application contient déjà un fichier skaffold.yaml, procédez comme suit:

  1. Dans la barre d'état Cloud Code, cliquez sur le nom du projet actif.

    Nom du projet actif dans la barre d'état

  2. Dans le menu de sélection rapide qui s'affiche, sélectionnez Run on Kubernetes (Exécuter sur Kubernetes) ou Debug on Kubernetes (Déboguer sur Kubernetes).

  3. Si plusieurs fichiers skaffold.yaml existent dans votre espace de travail, sélectionnez le fichier skaffold.yaml de votre choix.

  4. Si plusieurs profils Skaffold existent dans le fichier skaffold.yaml que vous avez choisi, sélectionnez le profil Skaffold de votre choix.

    La configuration de lancement cloudcode.kubernetes nouvellement créée est ajoutée à votre espace de travail (dans .vscode/launch.json) et votre application est exécutée ou est prête pour le débogage.

Créer manuellement une configuration Skaffold

Vous pouvez créer manuellement votre configuration Skaffold pour définir des options personnalisées. Cloud Code offre une fonctionnalité de modélisation en direct pour permettre la création manuelle de configurations Skaffold.

Pour créer manuellement une configuration Skaffold, procédez comme suit :

  1. Créez un fichier nommé skaffold.yaml dans le répertoire racine de votre espace de travail.

  2. Dans le fichier, appuyez sur Command/Ctrl+Space pour afficher la liste des suggestions d'extraits de code, puis sélectionnez l'extrait de code Skaffold - Getting-started.

    Créer une configuration Skaffold manuellement

  3. Saisissez le nom de votre image de projet dans le champ image, puis saisissez la liste des ressources Kubernetes à déployer dans le champ manifests.

    Exemple pour les builds basés sur Dockerfile :

    build:
      artifacts:
        - image: image_name
    deploy:
      kubectl:
        manifests:
          - k8s/web.yaml
          - k8s/backend.yaml
    

    Si vous souhaitez définir des configurations de compilation, de test et de déploiement pour différents contextes, vous pouvez configurer différents profils Skaffold. L'exemple suivant montre un profil Cloud Build permettant de configurer Cloud Code pour compiler des images avec Cloud Build :

    profiles:
    # use the cloudbuild profile to build images using Google Cloud Build
    - name: cloudbuild
      build:
        googleCloudBuild: {}
    

    Pour en savoir plus sur le schéma, consultez la documentation de référence sur le fichier skaffold.yaml.

Étapes suivantes