Test locale

Durante lo sviluppo, puoi eseguire e testare l'immagine container localmente, prima del deployment. Puoi utilizzare Cloud Code o Docker installato localmente per eseguire e testare localmente, inclusa l'esecuzione locale con accesso ai Google Cloud servizi.

Esecuzione in un emulatore di Knative Serving

Il plug-in Cloud Code per VS Code e gli IDE JetBrains ti consente di eseguire ed eseguire il debug localmente dell'immagine container in un emulatore di Knative Serving all'interno dell'IDE. L'emulatore ti consente di configurare un ambiente rappresentativo del servizio in esecuzione su Knative Serving.

Puoi configurare proprietà come l'allocazione di CPU e memoria, specificare le variabili di ambiente e impostare le connessioni al database Cloud SQL.

  1. Installa Cloud Code per VS Code o un IDE JetBrains.
  2. Segui le istruzioni per lo sviluppo e il debug locali all'interno dell'IDE.

Esecuzione locale con Docker

Per testare l'immagine container localmente utilizzando Docker:

  1. Utilizza il comando Docker:

    PORT=8080 && docker run -p 9090:${PORT} -e PORT=${PORT} IMAGE_URL

    Sostituisci IMAGE_URL con un riferimento all'immagine container, ad esempio, gcr.io/cloudrun/hello.

    La variabile di ambiente PORT specifica la porta che l'applicazione utilizzerà per ascoltare le richieste HTTP o HTTPS. Questo è un requisito da il contratto di runtime del container. In questo esempio, utilizziamo la porta 8080.

  2. Apri http://localhost:9090 nel browser.

Se non hai mai utilizzato i container, ti consigliamo di consultare la guida introduttiva a Docker. Per saperne di più sui comandi Docker, consulta la documentazione di Docker.

Esecuzione locale con Docker con accesso ai Google Cloud servizi

Se utilizzi le librerie client per integrare l'applicazione con i servizi e non hai ancora protetto questi servizi per controllare l'accesso esterno, puoi configurare il container locale per l'autenticazione con i servizi utilizzando una chiave del account di servizio account. Google Cloud Google Cloud Google Cloud

Per eseguire localmente:

  1. Consulta la sezione Chiave del service account per ricevere assistenza nella configurazione delle credenziali.

  2. I seguenti flag di esecuzione di Docker inseriscono le credenziali e la configurazione dal sistema locale nel container locale:

    1. Utilizza il flag --volume (-v) per inserire il file delle credenziali nel container (presupponendo che tu abbia già impostato la variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS sulla tua macchina):
      -v $GOOGLE_APPLICATION_CREDENTIALS:/tmp/keys/FILE_NAME.json:ro
    2. Utilizza il flag --environment (-e) per impostare la variabile GOOGLE_APPLICATION_CREDENTIALS all'interno del container:
      -e GOOGLE_APPLICATION_CREDENTIALS=/tmp/keys/FILE_NAME.json
  3. Facoltativamente, utilizza questo comando run di Docker completamente configurato:

    PORT=8080 && docker run \
    -p 9090:${PORT} \
    -e PORT=${PORT} \
    -e K_SERVICE=dev \
    -e K_CONFIGURATION=dev \
    -e K_REVISION=dev-00001 \
    -e GOOGLE_APPLICATION_CREDENTIALS=/tmp/keys/FILE_NAME.json \
    -v $GOOGLE_APPLICATION_CREDENTIALS:/tmp/keys/FILE_NAME.json:ro \
    IMAGE_URL

    Tieni presente che il percorso

    /tmp/keys/FILE_NAME.json
    mostrato nell'esempio precedente è una posizione ragionevole per inserire le credenziali all'interno del container.

    Tuttavia, funzioneranno anche altre posizioni delle directory. Il requisito fondamentale è che la variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS deve corrispondere alla posizione di montaggio di binding all'interno del container.

    Tieni presente, inoltre, che con alcuni Google Cloud servizi potresti voler utilizzare una configurazione alternativa per isolare la risoluzione dei problemi locali dalle prestazioni di produzione e dai dati.

Passaggi successivi

Per scoprire come eseguire il deployment dei container creati, consulta la sezione Eseguire il deployment dei servizi.