Sviluppa un servizio Cloud Run in locale in Cloud Code for VS Code

Prima di eseguire il deployment di un servizio in Cloud Run, puoi svilupparlo localmente utilizzando un emulatore Cloud Run.

Configurazione del servizio per lo sviluppo

Se non hai definito un file .vscode/launch.json, la finestra di dialogo Esegui/debug sull'emulatore di Cloud Run consente di configurare il lancio e quindi di salvare le impostazioni in .vscode/launch.json. Se hai configurato un file .vscode/launch.json, puoi modificarlo direttamente.

Per eseguire il servizio localmente, specifica la tua configurazione:

  1. Apri la tavolozza dei comandi (premi Ctrl/Cmd+Shift+P o fai clic su Visualizza > Tavolozza dei comandi), quindi esegui il comando Esegui su emulatore Cloud Run.
  2. Nella finestra di dialogo Esegui/Debug su emulatore Cloud Run, imposta le specifiche per la configurazione:

    • Per l'emulatore di Cloud Run sono disponibili solo strumenti di compilazione installati in locale
    • Scegli Docker o Buildpacks come builder e specifica l'origine
    • (Facoltativo) Per specificare eventuali variabili di ambiente da trasmettere ai container in esecuzione, espandi Impostazioni build avanzate e fai clic per specificare le coppie chiave-valore.
      Nome Descrizione Esempio
      PORT La porta su cui il server HTTP deve rimanere in ascolto. 8080
      K_SERVICE Il nome del servizio Cloud Run in esecuzione. ciao mondo
      K_REVISION Il nome della revisione di Cloud Run in esecuzione. ciao-mondo.1
      K_CONFIGURATION Il nome della configurazione Cloud Run che ha creato la revisione. ciao mondo
    • (Facoltativo) Per specificare le connessioni Cloud SQL, espandi Impostazioni di servizio avanzate, fai clic su Connessioni e specifica una connessione Cloud SQL per riga.
    • (Facoltativo) Seleziona l'opzione Rendi il servizio accessibile da altri dispositivi sulla rete locale.
    • (Facoltativo) Se vuoi ricreare ed eseguire il servizio solo manualmente, anziché automaticamente quando apporti una modifica, deseleziona l'opzione Ricrea e esegui di nuovo automaticamente in caso di modifiche.

Esecuzione del servizio in locale

  1. Dopo aver definito le impostazioni preferite, esegui il servizio facendo clic su Esegui.

  2. Se richiesto, autentica le credenziali per eseguire ed eseguire il debug di un'applicazione in locale.

  3. Monitora lo stato del deployment nella finestra di output.

    Al termine del deployment, puoi visualizzare il servizio in esecuzione aprendo l'URL visualizzato nella finestra di output.

  4. Per visualizzare i log dettagliati, passa alla visualizzazione Cloud Run dettagliata nella finestra di output.

    Riquadro di output con hello-world-5: selezione dettagliata dal menu a discesa del canale di output

  5. Al termine della sessione, fai clic con il tasto destro del mouse per utilizzare i seguenti comandi:

    • Visualizza log: apri i log dell'applicazione di un deployment specifico con lo strumento Esplora log di Cloud Code.
    • Apri URL: apri l'URL del servizio dell'applicazione di un servizio specifico in un browser web.
  6. Se hai disattivato la modalità orologio nella configurazione dell'avvio e vuoi apportare modifiche all'applicazione, ricrearla ed eseguirne nuovamente il deployment, fai clic sulla barra di stato di Cloud Code e poi su Attiva modalità orologio.

  7. Per arrestare il deployment, puoi fare clic sul pulsante Arresta nella barra delle azioni del deployment attuale.

    Barra delle azioni per il deployment di Cloud Run

Archiviare i secret

Se il tuo codice include dati potenzialmente sensibili come chiavi API, password e certificati, archiviarli come secret può contribuire a proteggerli. L'integrazione di Cloud Code Secret Manager consente di archiviare in modo sicuro questi secret e recuperarli in modo programmatico. Per informazioni dettagliate su come creare e gestire i secret con Cloud Code, consulta la guida di Secret Manager.

Personalizzazione di una configurazione Launch.json esistente

Il plug-in Cloud Code aggiorna automaticamente il file di configurazione launch.json quando scegli un'azione di esecuzione. Per personalizzare ulteriormente l'esecuzione del servizio, puoi specificare i seguenti campi nel file .vscode/launch.json:

  • watch: controlla le modifiche nell'area di lavoro ed esegue nuovamente il servizio. True per impostazione predefinita.

    Il seguente esempio mostra lo smartwatch impostato su true:

    "watch": true,
    
  • build: specifica il builder (Docker, jibMaven, jibGradle o buildpacks) con cui creare le immagini.

    L'esempio seguente mostra uno strumento per la creazione di Docker:

    "build": {
      "docker": {
        "path": "Dockerfile"
      }
    },
    

    L'esempio seguente mostra uno strumento per la creazione di buildpack:

    "build": {
      "buildpacks": {
        "path": "src/requirements.txt",
        "builder": "gcr.io/buildpacks/builder:v1"
      }
    },
    
  • image: specifica il nome dell'immagine da utilizzare.

    Il seguente esempio mostra come specificare il nome di un'immagine:

      "image": "hello-world",
    
  • service: specifica il servizio Cloud Run da utilizzare.

    Il seguente esempio mostra come specificare il nome di un servizio, la porta e i limiti delle risorse:

    "service": {
      "name": "hello-world",
      "containerPort": 8080,
      "resources": {
        "limits": {
          "memory": "256Mi"
        }
      }
    },
    
  • debug: specifica le impostazioni di debug come la mappatura del percorso remoto per mappare un percorso locale a un percorso sul container remoto.

    Il seguente esempio mostra una sezione di debug che indica la posizione dei file di origine:

    "debug": {
      "sourceFileMap": {
        "${workspaceFolder}": "/app"
      }
    }
    

Richiedi assistenza

Per inviare feedback, segnala problemi su GitHub o fai una domanda su Stack Overflow.