Tutorial di Cloud Run Starter

1. Panoramica

Cloud Run è una piattaforma serverless completamente gestita 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.

È basato su Knative, per consentirti di scegliere di eseguire i container in modo completamente gestito con Cloud Run o nel tuo cluster Google Kubernetes Engine con Cloud Run su GKE.

Cosa imparerai a fare

In questo lab imparerai a:

  • Esegui il deployment dell'applicazione Cloud Run

Prerequisiti

  • In questo lab si presuppone che tu abbia familiarità con gli ambienti della console Cloud e Cloud Shell.

2. Configurazione e requisiti

Configurazione del progetto Cloud

  1. Accedi alla console Google Cloud e crea un nuovo progetto o riutilizzane uno esistente. Se non hai ancora un account Gmail o Google Workspace, devi crearne uno.

b35bf95b8bf3d5d8.png

a99b7ace416376c4.png

bd84a6d3004737c5.png

  • Il Nome progetto è il nome visualizzato dei partecipanti del progetto. Si tratta di una stringa di caratteri non utilizzata dalle API di Google. Puoi aggiornarla in qualsiasi momento.
  • L'ID progetto è univoco in tutti i progetti Google Cloud ed è immutabile (non può essere modificato dopo essere stato impostato). La console Cloud genera automaticamente una stringa univoca. di solito non ti importa cosa sia. Nella maggior parte dei codelab, dovrai fare riferimento all'ID progetto (in genere è identificato come PROJECT_ID). Se l'ID generato non ti soddisfa, puoi generarne un altro casuale. In alternativa, puoi provarne una personalizzata per verificare se è disponibile. Non può essere modificato dopo questo passaggio e rimarrà per tutta la durata del progetto.
  • Per informazione, c'è un terzo valore, un numero di progetto, utilizzato da alcune API. Scopri di più su tutti e tre questi valori nella documentazione.
  1. Successivamente, dovrai abilitare la fatturazione nella console Cloud per utilizzare risorse/API Cloud. Eseguire questo codelab non dovrebbe costare molto. Per arrestare le risorse in modo da non incorrere in fatturazione oltre questo tutorial, puoi eliminare le risorse che hai creato o eliminare l'intero progetto. I nuovi utenti di Google Cloud sono idonei al programma prova senza costi di 300$.

Configurazione dell'ambiente

Attiva Cloud Shell facendo clic sull'icona a destra della barra di ricerca.

ecdc43ada29e91b.png

Da Cloud Shell, abilita l'API Cloud Run:

gcloud services enable run.googleapis.com

Se ti viene richiesta l'autorizzazione, fai clic su "Autorizza". per continuare.

6356559df3eccdda.png

Dovrebbe essere visualizzato un messaggio di operazione riuscita simile a questo:

Operation "operations/acf.p2-327036483151-73d90d00-47ee-447a-b600-a6badf0eceae" finished successfully.

3. Prepara la richiesta

Innanzitutto, preparerai una semplice applicazione Node.js basata su express che risponde alle richieste HTTP.

In Cloud Shell crea una nuova directory denominata starter-nodejs, quindi passa a quella directory:

mkdir starter-nodejs
cd starter-nodejs

Crea un file package.json eseguendo i comandi seguenti:

cat > ./package.json << EOF
{
  "name": "cloudrun-starter-app",
  "version": "1.0.0",
  "description": "Node.js Starter Application",
  "main": "index.js",
  "scripts": {
    "start": "node index.js"
  },
  "author": "",
  "license": "Apache-2.0",
  "dependencies": {
    "express": "^4.18.2"
  }
}
EOF

Il file precedente contiene un comando di avvio e una dipendenza dal framework dell'applicazione web Express.

Quindi, nella stessa directory, crea un file index.js eseguendo i comandi seguenti:

cat > ./index.js << EOF
const express = require('express');
const app = express();

app.get('/', (req, res) => {
  console.log('Received a request.');
  res.send("Hello Cloud Run!");
});

const port = process.env.PORT || 8080;

app.listen(port, () => {
  console.log('Listening on port', port);
});
EOF

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 sottoposta a deployment.

4. Esegui il deployment dell'applicazione Cloud Run

Esegui questo comando per eseguire il deployment della tua applicazione:

gcloud run deploy starter-app \
  --source . \
  --region us-central1 \
  --allow-unauthenticated \
  --max-instances=3

Conferma la creazione del repository Artifact Registry:

Deploying from source requires an Artifact Registry Docker repository to store built containers. A repository named [cloud-run-source-deploy] in region [us-central1] will be created.

Do you want to continue (Y/n)? y

A seguito del comando precedente, verranno eseguiti i seguenti passaggi:

d661616f9b2fffcf.png

Esplora l'output di questi passaggi nella console Cloud: Cloud Build, Cloud Storage, Artifact Registry e Cloud Run.

f536961280192919.png

5. Complimenti!

Complimenti! Hai appena eseguito il deployment di un'applicazione in Cloud Run.

Argomenti trattati:

  • Eseguire il deployment di un'applicazione iniziale su Cloud Run

Passaggi successivi

Esplora altri codelab di Cymbal Eats:

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo tutorial, elimina il progetto che contiene le risorse oppure mantieni il progetto ed elimina le singole risorse.

Elimina il progetto

Il modo più semplice per eliminare la fatturazione è quello di eliminare il progetto che hai creato per il tutorial.