Cloud Code installa e gestisce automaticamente minikube. Se
hai disattivato la gestione delle dipendenze, aggiungi il programma binario minikube a PATH
.
Prima di iniziare
- Installa Git in modo che Cloud Code eseguire operazioni Git, come la clonazione di un campione.
- Se non l'hai ancora fatto, installa il plug-in Cloud Code.
Crea un'applicazione da un modello
Cloud Code include una raccolta di modelli di codice campione per iniziare rapidamente. Per creare un'applicazione Kubernetes utilizzando un campione esistente:
- Apri la tavolozza dei comandi (premi
Ctrl
/Cmd
+Shift
+P
o fai clic su Visualizza > Command Palette) ed esegui Cloud Code: New Application. - Seleziona Applicazione Kubernetes per il tipo di esempio.
- Seleziona un campione basato sulla lingua che vuoi utilizzare tra quelle disponibili opzioni: NodeJS, Go, Python, Java.
Scegli la posizione preferita dell'applicazione sulla tua macchina locale e fai clic su Crea nuova applicazione per salvare.
Cloud Code clona l'esempio che hai scelto e apre il nuovo progetto per l'uso.
Struttura dell'applicazione di esempio
Tutte le applicazioni di esempio per le lingue hanno quasi la stessa struttura. Questa non è l'unica struttura supportata, ma è consigliata all'inizio.
Ad esempio, la struttura dell'applicazione Guestbook di Node.js è la seguente:
.
|---- .vscode
| └---- launch.json
|---- kubernetes-manifests
| |---- guestbook-backend.deployment.yaml
| |---- guestbook-backend.service.yaml
| |---- guestbook-frontend.deployment.yaml
| |---- guestbook-frontend.service.yaml
| |---- mongo.deployment.yaml
| └---- mongo.service.yaml
|---- src
| |---- backend
| | |---- Dockerfile
| | |---- index.js
| | |---- app.js
| | └---- package.json
| |---- frontend
| |---- Dockerfile
| |---- index.js
| | |---- app.js
| └---- package.json
└---- skaffold.yaml
Se diamo uno sguardo più da vicino a questa app di esempio Node.js Guestbook di Kubernetes, ecco di alcuni file chiave e dei loro usi:
- .vscode
extensions.json
: richiesta di download di estensioni correlate all'apertura di questo progettolaunch.json
: configurazione di lancio (di tipocloudcode.kubernetes
) per eseguire o eseguire il debug dell'applicazione Kubernetestasks.json
: informazioni di configurazione per Visual Studio Code Tasks
- kubernetes-manifests
guestbook-backend.deployment.yaml
: specifica del pod per i nodi di backendguestbook-frontend.deployment.yaml
: specifica del pod per il frontend nodesmongo.deployment.yaml
: specifica del pod per il database
- src
(backend|frontend)/app.js
: codice Node.js con la logica del server web(backend|frontend)/Dockerfile
: utilizzata per creare l'immagine container per il nostro programma
skaffold.yaml
: file di configurazione per Skaffold, utilizzato da Cloud Code per creare, eseguire il deployment e eseguire il debug di applicazioni Kubernetes
Utilizzare la tua applicazione
Per la procedura di utilizzo di un progetto esistente, vedi Utilizzare Cloud Code con un'applicazione Kubernetes esistente.
Imposta il tuo contesto Kubernetes
Prima di eseguire l'applicazione, assicurati che sia tutto pronto per eseguire il deployment dell'app in il contesto Kubernetes che preferisci. Puoi specificare questo valore configurazione.
Configurazione
Quando utilizzi la configurazione di esecuzione Cloud Code: sviluppa su Kubernetes, puoi personalizzare il deployment configurando le impostazioni disponibili.
Per aggiungere o modificare le configurazioni, vai a Esegui > Apri configurazioni, quindi modifica o aggiungi le configurazioni.Crea ed esegui il deployment in un cluster minikube
Avvia un cluster minikube
Cloud Code installa e gestisce automaticamente minikube. Se
hai disattivato la gestione delle dipendenze, aggiungi il programma binario minikube a PATH
.
- Avvia la tavolozza dei comandi (premi
Ctrl
/Cmd
+Shift
+P
o fai clic su Visualizza > Tavolozza comandi) e poi esegui il comando Cloud Code: Control minikube. - Fai clic su minikube in Scegli un cluster Minikube (profilo) da controllare e poi su Avvia.
Esegui su minikube
- Avvia la tavolozza dei comandi ed esegui Cloud Code: Run on Kubernetes.
- Fai clic su Sì per Vuoi utilizzare il contesto attuale (minikube) per eseguire l'app?
Cloud Code esegue la tua app in un cluster minikube. Se richiesto, autorizza Cloud Shell a utilizzare le tue credenziali per effettuare una chiamata API Google Cloud.
Visualizza i dettagli del deployment nella sezione Sessioni di sviluppo di Cloud Code.
Visualizza gli URL facendo clic su URL trasferiti nelle Sessioni di sviluppo. fai clic sul link dell'URL per aprire il browser con la un'applicazione.
Apri un terminale interattivo per un container
- Fai clic su Cloud Code ed espandi l'Explorer Sessioni di sviluppo.
- Espandi Risorse di cui è stato eseguito il deployment, quindi espandi Pod.
- Fai clic con il tasto destro del mouse su un contenitore e poi fai clic su Ottieni terminale.
Metti in pausa o arresta un cluster minikube
- Avvia la tavolozza dei comandi (premi
Ctrl
/Cmd
+Shift
+P
o fai clic su Visualizza > Tavolozza comandi) e poi esegui il comando Cloud Code: Control minikube. - Dopo aver compilato l'opzione Scegli un cluster (profilo) Minikube da controllare, fai clic su minikube e poi su Interrompi o Metti in pausa.
Creare e aggiungere un cluster da un altro cloud provider
Se utilizzi un cluster on-premise o di un altro provider come Azure o AWS, utilizza gli strumenti del provider per creare il cluster e aggiungerlo al tuo KubeConfig.
Collaborare con altri cluster locali
Oltre a minikube, puoi utilizzare Cloud Code se utilizzi Docker Desktop (ad Mac o Windows).
Per far funzionare Cloud Code con un cluster locale, assicurati che la configurazione predefinita (ad esempio ~/.kube/config
) contenga il cluster locale. Questo cluster deve essere impostato come contesto attuale.
Ad esempio, se utilizzi un cluster locale, docker-for-desktop
, con
Docker Desktop, imposta il cluster preferito eseguendo questo comando:
kubectl config use-context docker-for-desktop
Passaggi successivi
- Utilizza la sincronizzazione dei file e il ricaricamento rapido per velocizzare lo sviluppo.
- Esegui il debug dell'applicazione in Cloud Code