Se sviluppi applicazioni da eseguire in Google Kubernetes Engine, puoi utilizzare un IDE e il plug-in Cloud Code per semplificare le attività di sviluppo principali, come il test e il debug a livello locale e il deployment in un cluster di test.
Obiettivi
Scopri come eseguire le seguenti attività di sviluppo nell'editor di Cloud Shell, un IDE dimostrativo online:
Creare un'app Kubernetes di esempio.
Eseguire, aggiornare e visualizzare i log per l'app nell'ambiente di sviluppo.
Eseguire il deployment dell'app in un cluster GKE.
Per generare una stima dei costi in base all'utilizzo previsto,
utilizza il calcolatore prezzi.
I nuovi utenti di Google Cloud potrebbero avere diritto a una prova gratuita.
Al termine delle attività descritte in questo documento, puoi evitare
l'addebito di ulteriori costi eliminando le risorse che hai creato. Per ulteriori informazioni, vedi
Pulizia.
Avrai bisogno di queste informazioni in un secondo momento.
Crea un'app nell'editor di Cloud Shell
Nella console Google Cloud , apri Cloud Shell facendo clic su terminalCloud Shell nella barra delle attività.
Apri editor.
Attendi l'inizializzazione dell'editor di Cloud Shell.
Nell'editor di Cloud Shell, fai clic su Visualizza > Riquadro dei comandi.
Cerca Cloud Code: nuova applicazione e fai clic sulla voce.
Seleziona prima Applicazione Kubernetes e poi Go: Hello World.
Ogni framework dei linguaggi offre esperienze leggermente diverse e questo tutorial descrive le funzionalità disponibili per Go.
Nella finestra di dialogo Salva, fai clic su Crea nuova applicazione.
L'editor di Cloud Shell ricarica la pagina e mostra i file di origine dell'app nella vista Explorer.
L'app è costituita da:
Un'app web go-hello-world di base,
main.go,
che restituisce una risposta modello "È in esecuzione" a tutte le richieste ricevute.
Una specifica del deployment di Kubernetes,
hello.deployment.yaml.
Una specifica del servizio Kubernetes che definisce un bilanciatore del carico per l'app,
hello.service.yaml.
Un file Skaffold che gestisce il workflow per la creazione e il deployment dell'app, skaffold.yaml.
Esegui l'app nell'ambiente di sviluppo
Se possibile, esegui le app nel tuo ambiente di sviluppo prima di eseguire il deployment
in GKE. Questo può aiutarti a identificare eventuali problemi senza utilizzare la
quota Google Cloud .
Per eseguire l'app nell'ambiente dell'editor di Cloud Shell:
Nell'editor di Cloud Shell, fai clic su Terminale > Nuovo terminale.
Avvia un cluster eseguendo il seguente comando:
minikubestart
minikube è un'implementazione leggera di Kubernetes che crea una VM nel tuo ambiente locale ed esegue il deployment di un cluster semplice contenente un solo nodo.
La configurazione del cluster minikube potrebbe richiedere qualche minuto.
Se viene richiesto di autorizzare Cloud Shell a effettuare chiamate API Cloud, fai clic su Autorizza.
Una volta configurato il cluster minikube, viene visualizzato un messaggio simile al seguente:
Done! kubectl is now configured touse "minikube" cluster...
Dopo aver configurato minikube, crea ed esegui la tua app:
Nella barra di stato dell'editor di Cloud Shell, fai clic su Cloud Code.
Seleziona Esegui su Kubernetes.
Se richiesto, conferma di voler utilizzare il contesto attuale di minikube.
L'editor di Cloud Shell crea la tua app e ne esegue il deployment nel cluster minikube.
Osserva lo stato del deployment nella vista Sessioni di sviluppo.
Al termine del deployment, accanto agli
URL di port forwarding viene visualizzato un segno di spunta verde. Accanto a Log applicazioni flusso viene visualizzata un'icona che gira.
Per visualizzare la tua app, guarda più in basso nel riquadro Sessioni di sviluppo e individua URL di port forwarding > servizio.
Tieni premuto il puntatore del mouse su
go-hello-world-external e fai clic su open_in_newApri URL.
Modifica l'app
Quando modifichi un file di origine nell'app, l'editor di Cloud Shell crea ed esegue il deployment dell'app automaticamente nel cluster a cui attualmente è stabilita la connessione.
In questo caso, la connessione è stabilita con il cluster minikube.
Per modificare ed eseguire nuovamente il deployment dell'app nel tuo cluster minikube locale:
Modifica il tuo file main.go per stampare "Deployment eseguito nuovamente". Il file viene salvato automaticamente.
Guarda la vista Sessioni di sviluppo mentre la tua app viene ricreata e ne viene eseguito il deployment.
Visualizza l'app di cui hai eseguito il deployment come in precedenza:
Nel riquadro Sessioni di sviluppo, individua URL di port forwarding > servizio.
Tieni premuto il puntatore del mouse su
go-hello-world-external e fai clic su open_in_newApri URL.
Visualizza i log delle app
Nella barra dei menu dell'editor di Cloud Shell, seleziona Visualizza > Riquadro dei comandi.
Cerca Cloud Code: visualizza log e fai clic sulla voce.
Si apre il visualizzatore log.
In Deployment, seleziona go-hello-world.
Filtra il visualizzatore log in modo che mostri solo i log per l'app go-hello-world.
Passa alla scheda con l'app che mostra il messaggio "Deployment eseguito nuovamente". Ricarica la pagina nel browser, quindi torna alla scheda Cloud Shell.
Per visualizzare i log appena generati all'interno del visualizzatore log, fai clic su
refreshAggiorna.
Esegui il deployment dell'app in un cluster GKE
Aggiungi il tuo cluster GKE all'elenco dei cluster in cui puoi eseguire il deployment:
Nella vista Kubernetes, fai clic su addAggiungi un cluster a KubeConfig.
Nella finestra di dialogo Scegli una piattaforma, fai clic su Google Kubernetes Engine.
Se viene richiesto di abilitare l'API Google Cloud , fai clic su Sì.
Attendi che l'editor di Cloud Shell trovi i cluster nel progetto
Google Cloud .
Nella finestra di dialogo Crea o scegli un cluster GKE, seleziona
il nome del cluster che hai creato, hello-world-cluster.
Nella barra di stato dell'editor di Cloud Shell, fai clic su Cloud Code e seleziona Esegui su Kubernetes.
Quando ti viene chiesto di selezionare un contesto per la richiesta di deployment, scegli Usa contesto attuale, che è impostato sul tuo cluster GKE.
Nella finestra di dialogo Scegli repository di immagini, seleziona gcr.io/PROJECT_NAME.
L'editor di Cloud Shell crea la tua app in un container e archivia il container nel repository che hai selezionato.
Guarda la vista Sessioni di sviluppo mentre la tua app viene ricreata e ne viene eseguito il deployment.
Per visualizzare messaggi di log dettagliati durante il deployment dell'app in GKE, fai clic sul nodo Esegui il deployment nel cluster nella vista Sessioni di sviluppo.
Per visualizzare la tua app in esecuzione:
Chiudi la vista facendo clic sull'intestazione Sessioni di sviluppo.
Apri la vista Kubernetes.
Espandi il tuo cluster GKE.
Vai a Spazi dei nomi > predefinito > Servizi > go-hello-world-external > IP esterni.
Tieni il puntatore del mouse sull'indirizzo IP e fai clic su open_in_newApri URL.
Hai creato ed eseguito correttamente il deployment di un'app GKE da un IDE.
Eseguire la pulizia per evitare addebiti.
Se prevedi di seguire altri tutorial, esegui la pulizia dopo averli completati. Puoi utilizzare il cluster Kubernetes di esempio nella maggior parte dei tutorial GKE.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-09-01 UTC."],[],[],null,["# Deploy and update from an IDE\n\n[Autopilot](/kubernetes-engine/docs/concepts/autopilot-overview)\n\n*** ** * ** ***\n\nIf you develop applications to run in Google Kubernetes Engine, you can use an IDE and the Cloud Code plugin to simplify key development tasks, such as testing and debugging locally and deploying to a test cluster.\n\n\u003cbr /\u003e\n\nObjectives\n----------\n\nLearn how to do the following development tasks in Cloud Shell Editor,\nan online demonstration IDE:\n\n1. Create a sample Kubernetes app.\n\n2. Run, update, and view logs for the app in your development environment.\n\n3. Deploy the app to a GKE cluster.\n\nYou can follow a similar process in your own IDE if you\n[install Cloud Code](/code/docs).\n\n*** ** * ** ***\n\nTo follow step-by-step guidance for this task directly in the\nGoogle Cloud console, click **Guide me**:\n\n[Guide me](https://console.cloud.google.com/freetrial?redirectPath=/kubernetes/list/overview?walkthrough_id=kubernetes--developer-workflow)\n\n*** ** * ** ***\n\nCosts\n-----\n\n\nIn this document, you use the following billable components of Google Cloud:\n\n\n- [GKE](/kubernetes-engine/pricing)\n\n\nTo generate a cost estimate based on your projected usage,\nuse the [pricing calculator](/products/calculator). \nNew Google Cloud users might be eligible for a [free trial](/free). \n\n\u003cbr /\u003e\n\nWhen you finish the tasks that are described in this document, you can avoid\ncontinued billing by deleting the resources that you created. For more information, see\n[Clean up](#clean-up).\n\nBefore you begin\n----------------\n\nCreate a Kubernetes cluster.\n[Create a cluster and deploy a workload](/kubernetes-engine/docs/quickstarts/create-cluster)\nshows you how. \n\nChoose a Google Cloud project and cluster\n-----------------------------------------\n\nWhen you deploy your app to GKE later on in this tutorial, you\nwill need to specify a Google Cloud project and a GKE cluster.\n\n1. Go to the GKE **Clusters** page.\n\n\n [Go to Clusters](https://console.cloud.google.com/kubernetes/list/overview)\n\n \u003cbr /\u003e\n\n2. Choose a project that contains a GKE cluster.\n\n \u003cbr /\u003e\n\n3. Note the name of the project and cluster.\n\n You'll need this information later.\n\nCreate an app in Cloud Shell Editor\n-----------------------------------\n\n1. In the Google Cloud console, open Cloud Shell\n by clicking terminal**Cloud Shell**\n in the task bar.\n\n2. Click\n **Open\n Editor**.\n\n3. Wait for Cloud Shell Editor to initialize.\n\n4. In Cloud Shell Editor, click **View** \\\u003e **Command Palette**.\n\n5. Search for **Cloud Code: New Application** and click it.\n\n6. Select **Kubernetes Application** , then select **Go: Hello World**.\n\n Each language framework provides slightly different experiences, and this\n tutorial describes the features available for Go.\n7. In the Save dialog, click **Create new application**.\n\n Cloud Shell Editor reloads and shows your app source files in the Explorer\n view.\n\nThe app consists of:\n\n- A basic `go-hello-world` web app,\n `main.go`,\n that returns a templated \"It's running!\" response to all received requests.\n\n- A Kubernetes Deployment specification,\n `hello.deployment.yaml`.\n\n- A Kubernetes Service specification that defines a load balancer for the app,\n `hello.service.yaml`.\n\n- A [Skaffold](https://skaffold.dev/) file that handles the workflow for\n building and deploying the app, `skaffold.yaml`.\n\nRun the app in your development environment\n-------------------------------------------\n\nWhen possible, run apps in your development environment before deploying\nto GKE. This can help you identify any potential issues without\nusing Google Cloud quota.\n\nTo run the app in your Cloud Shell Editor environment:\n\n1. In Cloud Shell Editor, click **Terminal** \\\u003e **New Terminal**.\n\n2. Start a cluster by running the following command:\n\n minikube start\n\n *minikube* is a lightweight Kubernetes implementation that creates a VM in\n your local environment and deploys a simple cluster containing only one node.\n\n It might take a minute to set up the minikube cluster.\n3. If prompted to authorize Cloud Shell to make Cloud API calls,\n click **Authorize**.\n\n After your minikube cluster is set up, a message similar to the following\n appears: \n\n Done! kubectl is now configured to\n use \"minikube\" cluster...\n\nAfter minikube is set up, build and run your app:\n\n1. In the Cloud Shell Editor status bar, click\n **Cloud\n Code**.\n\n2. Select **Run on Kubernetes**.\n\n3. If prompted, confirm that you want to use the current minikube context.\n\n Cloud Shell Editor builds your app and deploys it to the minikube cluster.\n4. Watch the deployment status in the\n **Development\n sessions** view.\n\n When the deployment is complete, a green check mark appears next to\n **Portforward URLs** . The spinning icon appears next to\n **Stream Application Logs**.\n5. To view your app, look further down the **Development sessions**\n pane and find **Port Forward URLs** \\\u003e **service**.\n\n6. Hold the pointer over\n **go-hello-world-external**\n and click open_in_new **Open URL**.\n\nEdit your app\n-------------\n\nWhen you change a source file in your app, Cloud Shell Editor automatically\nbuilds and deploys your app to the cluster that you're currently connected to.\nIn this case, you're connected to your minikube cluster.\n\nTo edit and redeploy the app to your local minikube cluster:\n\n1. Modify your\n `main.go`\n file to print \"It's redeployed!\". The file saves automatically.\n\n2. Watch the\n **Development\n sessions** view as your app is rebuilt and\n deployed.\n\n3. View your redeployed app as you did before:\n\n 1. In the **Development sessions**\n pane, find **Port Forward URLs** \\\u003e **service**.\n\n 2. Hold the pointer over\n **go-hello-world-external**\n and click open_in_new **Open URL**.\n\nView app logs\n-------------\n\n1. In the Cloud Shell Editor menu bar, select **View** \\\u003e **Command Palette**.\n\n2. Search for **Cloud Code: View Logs** and click it.\n\n The Logs Viewer opens.\n3. In\n **Deployment**,\n select `go-hello-world`.\n\n This filters the Logs Viewer to only display logs for your `go-hello-world` app.\n4. Switch to the tab with your app that shows \"It's redeployed!\" Reload the\n page in the browser and then switch back to the Cloud Shell tab.\n\n5. To view the newly generated logs in the Logs Viewer, click\n refresh\n **Refresh**.\n\nDeploy your app to a GKE cluster\n--------------------------------\n\n1. Add your GKE cluster to the list of clusters you can\n deploy to:\n\n 1. In the Kubernetes\n view, click add\n **Add a Cluster to the KubeConfig**.\n\n 2. In the **Choose a platform** dialog, click **Google Kubernetes Engine**.\n\n 3. If prompted to enable the Google Cloud API, click **Yes**.\n\n 4. Wait for Cloud Shell Editor to find the clusters in your\n Google Cloud project.\n\n 5. In the **Create or choose a GKE cluster** dialog, select\n the name of the cluster you created, **hello-world-cluster**.\n\n2. In the Cloud Shell Editor status bar, click\n **Cloud\n Code** and select **Run on Kubernetes**.\n\n3. When prompted to select a context for your deployment request, choose\n **Use current context**, which is set to your GKE cluster.\n\n4. In the **Choose image repository** dialog, select **gcr.io/\u003cvar translate=\"no\"\u003ePROJECT_NAME\u003c/var\u003e**.\n\n Cloud Shell Editor builds your app into a container and stores the container\n in the repository you selected.\n5. Watch the\n **Development\n sessions** view as your app is rebuilt and\n deployed.\n\n6. To view detailed log messages as your app is being deployed to GKE,\n click the **Deploy to Cluster** node in the **Development sessions** view.\n\n7. To view your running app:\n\n 1. Close the view by clicking the **Development sessions** heading.\n\n 2. Open the Kubernetes\n view.\n\n 3. Expand your GKE cluster.\n\n 4. Go to **Namespaces \\\u003e default \\\u003e Services \\\u003e go-hello-world-external \\\u003e External IPs**.\n\n 5. Hold the pointer over the IP address and click\n open_in_new **Open URL**.\n\nYou have successfully created and deployed a GKE app from an IDE.\n\nWhat's next\n-----------\n\n- [View code samples](/docs/samples) demonstrating the usage of\n Google Cloud products\n\n- [Install Cloud Code](/code/docs) in your IDE\n\n- [Clean up to avoid billing charges](/kubernetes-engine/docs/quickstarts/learning-path-cleanup).\n If you plan to take additional tutorials, wait until you finish those tutorials\n before you clean up. You can use the sample Kubernetes cluster in most\n GKE tutorials."]]