Migrazione di un servizio esistente

Questa guida mostra come preparare un servizio web per l'esecuzione in un contenitore su Knative Serving. Non copre la migrazione dei dati.

Identificare la porta su cui il codice è in ascolto

Il servizio deve ascoltare le richieste su una porta specifica. Devi identificare questa porta e configurare Knative serving in modo che invii la richiesta alla stessa porta.

Si tratta della stessa porta che utilizzeresti per richiamare il servizio sulla tua macchina locale. Ad esempio, se per testare il codice apri localhost:3000, imposta la porta del contenitore su 3000 in Knative Serving.

Per impostazione predefinita, Knative serving invia le richieste a 8080. Il valore della porta a cui vengono inviate le richieste è sempre disponibile nella variabile di ambiente PORT. È consigliabile che il codice esegua le operazioni di ascolto sul valore definito dalla variabile di ambiente PORT, se possibile.

Rimuovere la dipendenza dal file system locale per lo spazio di archiviazione permanente

Controlla se il codice dell'applicazione si basa su file system locali e sostituiscilo con lo spazio di archiviazione file su Cloud Storage o con lo spazio di archiviazione dei dati come Firestore o Cloud SQL.

Aggiungi un Dockerfile

Per racchiudere il servizio in un contenitore, devi utilizzare un Dockerfile per definire l'ambiente operativo. Scopri di più sulla personalizzazione di Dockerfile nella pagina Sviluppare il servizio.

Ottimizzazione per la concorrenza e i limiti di memoria

Scopri di più sulla concorrenza in Knative serving e su come ottimizzare i tuoi servizi nei suggerimenti per lo sviluppo per l'ottimizzazione della concorrenza.

Assicurati che il limite di memoria sia sufficientemente elevato per l'esecuzione dell'applicazione, inclusa la capacità per lo spazio di archiviazione dei file temporanei richiesto dal servizio.

Invia i log a stdout o stderr

Knative serving utilizza automaticamente Google Cloud Observability per aggregare e esaminare i log, come descritto nella pagina di logging.