
Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Cloud Run è una piattaforma gestita di computing che consente di eseguire container stateless richiamabili tramite richieste HTTP. Cloud Run è serverless. Astrae completamente la gestione dell'infrastruttura per consentirti di concentrarti su quello che conta davvero: creare applicazioni fantastiche.
Cloud Run è basato su Knative per consentirti di scegliere se eseguire i container in maniera completamente gestita con Cloud Run o nel tuo cluster Google Kubernetes Engine con Cloud Run su GKE.
L'obiettivo di questo lab è creare una semplice immagine dell'applicazione containerizzata ed eseguirne il deployment su Cloud Run.
In questo lab imparerai a:
Per ciascun lab, riceverai un nuovo progetto Google Cloud e un insieme di risorse per un periodo di tempo limitato senza alcun costo aggiuntivo.
Fai clic sul pulsante Avvia lab. Se devi effettuare il pagamento per il lab, si apre una finestra popup per permetterti di selezionare il metodo di pagamento. A sinistra, trovi il riquadro Dettagli lab con le seguenti informazioni:
Fai clic su Apri console Google Cloud (o fai clic con il tasto destro del mouse e seleziona Apri link in finestra di navigazione in incognito se utilizzi il browser Chrome).
Il lab avvia le risorse e apre un'altra scheda con la pagina di accesso.
Suggerimento: disponi le schede in finestre separate posizionate fianco a fianco.
Se necessario, copia il Nome utente di seguito e incollalo nella finestra di dialogo di accesso.
Puoi trovare il Nome utente anche nel riquadro Dettagli lab.
Fai clic su Avanti.
Copia la Password di seguito e incollala nella finestra di dialogo di benvenuto.
Puoi trovare la Password anche nel riquadro Dettagli lab.
Fai clic su Avanti.
Fai clic nelle pagine successive:
Dopo qualche istante, la console Google Cloud si apre in questa scheda.
Google Cloud Shell è una macchina virtuale in cui sono caricati strumenti per sviluppatori. Offre una home directory permanente da 5 GB e viene eseguita su Google Cloud.
Google Cloud Shell fornisce l'accesso da riga di comando alle risorse Google Cloud.
Nella barra degli strumenti in alto a destra della console Cloud, fai clic sul pulsante Apri Cloud Shell.
Fai clic su Continua.
Bastano pochi istanti per eseguire il provisioning e connettersi all'ambiente. Quando la connessione è attiva, l'autenticazione è già avvenuta e il progetto è impostato sul tuo PROJECT_ID. Ad esempio:
gcloud è lo strumento a riga di comando di Google Cloud. È preinstallato su Cloud Shell e supporta il completamento.
Output:
Output di esempio:
Output:
Output di esempio:
Di seguito troverai un elenco di riferimento di alcuni comandi Linux molto basilari che possono essere inclusi nelle istruzioni o nei blocchi di codice per questo lab.
Comando --> | Azione | . | Comando --> | Azione |
---|---|---|---|---|
mkdir (make directory) | crea una nuova cartella | . | cd (change directory) | passa a un'altra cartella |
ls (list ) | elenca file e cartelle contenuti nella directory | . | cat (concatenate) | consente di leggere i contenuti di un file senza utilizzare un editor |
apt-get update | aggiorna la libreria del gestore di pacchetti | . | ping | invia un segnale per testare la raggiungibilità di un host |
mv (move ) | sposta un file | . | cp (copy) | crea la copia di un file |
pwd (present working directory ) | torna alla posizione corrente | . | sudo (super user do) | concede privilegi amministrativi più elevati |
In questa attività creerai una semplice applicazione NodeJS basata su Express che risponderà alle richieste HTTP.
helloworld
, quindi sposta la visualizzazione in quella directory:Quindi creerai e modificherai i file. Per modificare i file, usa nano
o l'editor di codice Cloud Shell facendo clic sul pulsante Apri editor in Cloud Shell.
Crea un file package.json
, e copia al suo interno il seguente codice:
Molto importante: il file sopra contiene un comando di avvio di script e una dipendenza dal framework dell'applicazione web Express.
Premi Ctrl+X, Y e poi Invio per salvare il file package.json
.
Quindi, nella stessa directory, crea un file index.js
e copia al suo interno le seguenti righe:
Questo codice crea un server web di base in ascolto sulla porta definita dalla variabile di ambiente PORT
. La tua app è ora completa e pronta per essere containerizzata e caricata in Artifact Registry.
index.js
Dockerfile
nella stessa directory dei file di origine e aggiungi il contenuto seguente:Premi CTRL+X, Y e poi Invio per salvare il file Dockerfile
.
Ora crea la tua immagine container utilizzando Cloud Build eseguendo il comando seguente dalla directory contenente il file Dockerfile
(nota come la variabile di ambiente $GOOGLE_CLOUD_PROJECT nel comando, contiene l'ID progetto del lab):
Cloud Build è un servizio che esegue le tue build su Google Cloud. Esegue una serie di passaggi di compilazione, ognuno eseguito in un container Docker per produrre il container dell'applicazione (o altri artefatti) ed eseguirne il push in Artifact Registry, tutto in un unico comando.
Una volta eseguito il push in Artifact Registry, vedrai una notifica di operazione riuscita contenente il nome dell'immagine (gcr.io/[PROJECT-ID]/helloworld
). L'immagine è archiviata in Artifact Registry e, se lo desideri, può essere riutilizzata.
gcloud
come assistente per le credenziali per tutti i registry Docker supportati da Google:docker
standard:Dovrebbe aprirsi una finestra del browser con il messaggio "Hello World!". Puoi anche utilizzare semplicemente il comando curl localhost:8080
.
Il flag allow-unauthenticated nel comando sopra rende il tuo servizio pubblicamente accessibile.
service name
premendo Invio.Attendi qualche istante fino al completamento del deployment.
Se l'operazione riesce, la riga di comando visualizza l'URL del servizio:
Ora puoi visitare il container di cui hai eseguito il deployment aprendo l'URL del servizio in qualsiasi finestra del browser.
Complimenti! Hai eseguito il deployment di un'applicazione pacchettizzata in un'immagine container su Cloud Run. Cloud Run scala automaticamente e orizzontalmente l'immagine container per gestire le richieste ricevute, quindi fa lo scale down quando la domanda diminuisce. Nel tuo ambiente, paghi solo per la CPU, la memoria e le risorse di rete utilizzate durante la gestione delle richieste.
Per questo lab hai utilizzato la riga di comando gcloud
. Cloud Run è disponibile anche tramite la console Cloud.
helloworld
in elenco:Sebbene non siano previsti addebiti per Cloud Run quando il servizio non è in uso, ti potrebbero comunque essere addebitati i costi di archiviazione dell'immagine container creata.
helloworld
utilizzando questo comando:Quando ti viene chiesto di continuare, digita Y
e premi Invio.
Per eliminare il servizio Cloud Run, utilizza questo comando:
Y
e premi Invio.Una volta completato il lab, fai clic su Termina lab. Google Cloud Skills Boost rimuove le risorse che hai utilizzato ed esegue la pulizia dell'account.
Avrai la possibilità di inserire una valutazione in merito alla tua esperienza. Seleziona il numero di stelle applicabile, inserisci un commento, quindi fai clic su Invia.
Il numero di stelle corrisponde alle seguenti valutazioni:
Se non vuoi lasciare un feedback, chiudi la finestra di dialogo.
Per feedback, suggerimenti o correzioni, utilizza la scheda Assistenza.
Hai completato il lab.
Per saperne di più sulla creazione di un container HTTP stateless adatto per Cloud Run dall'origine del codice e su come eseguirne il push in Artifact Registry, vai alla pagina:
Copyright 2020 Google LLC Tutti i diritti riservati. Google e il logo Google sono marchi di Google LLC. Tutti gli altri nomi di società e prodotti sono marchi delle rispettive società a cui sono associati.
Questi contenuti non sono al momento disponibili
Ti invieremo una notifica via email quando sarà disponibile
Bene.
Ti contatteremo via email non appena sarà disponibile
One lab at a time
Confirm to end all existing labs and start this one