Questa pagina mostra come risolvere i problemi relativi a Cloud Run.
Per altri problemi non elencati di seguito, verifica se potrebbero trattarsi di un problema noto.
Errori di deployment
Questa sezione elenca i problemi che potresti riscontrare durante l'implementazione e fornisce suggerimenti su come risolverli.
Impossibile avviare il container
Quando provi a eseguire il deployment, si verifica il seguente errore:
Container failed to start. Failed to start and then listen on the port defined by the PORT environment variable.
Per risolvere il problema, escludi le seguenti potenziali cause:
Verifica di poter eseguire l'immagine container localmente. Se l'immagine del container non può essere eseguita localmente, devi prima diagnosticare e risolvere il problema a livello locale.
Controlla se il container è in ascolto delle richieste sulla porta prevista, come documentato nel contratto di runtime del container. Il container deve rimanere in ascolto delle richieste in entrata sulla porta definita da Cloud Run e fornita nella variabile di ambiente
PORT
. Consulta Configurazione dei container per istruzioni su come specificare la porta.Verifica se il contenitore è in ascolto su tutte le interfacce di rete, comunemente indicate come
0.0.0.0
.Verifica che l'immagine container sia compilata per Linux a 64 bit come richiesto dal contratto di runtime del container.
Utilizza Cloud Logging per cercare errori dell'applicazione nei log
stdout
ostderr
. Puoi anche cercare gli arresti anomali acquisiti in Error Reporting.Potresti dover aggiornare il codice o le impostazioni di revisione per correggere errori o arresti anomali. Puoi anche risolvere i problemi del servizio localmente.
Errore interno: scadenza per l'idoneità delle risorse superata
Il seguente errore si verifica quando provi a eseguire il deployment o a chiamare un'altra API Google Cloud:
The server has encountered an internal error. Please try again later. Resource readiness deadline exceeded.
Questo problema può verificarsi quando l'agente di servizio Cloud Run non esiste o quando non dispone del ruolo Agente di servizio Cloud Run (roles/run.serviceAgent
).
Per verificare che l'agente di servizio Cloud Run esista nel progetto Google Cloud e disponga del ruolo necessario, esegui questi passaggi:
Apri la console Google Cloud:
Nell'angolo in alto a destra della pagina Autorizzazioni, seleziona la casella di controllo Includi concessioni dei ruoli fornite da Google.
Nell'elenco Entità, individua l'ID dell'agente di servizio Cloud Run che utilizza l'ID
service-PROJECT_NUMBER@serverless-robot-prod.iam.gserviceaccount.com
.Verifica che l'agente di servizio disponga del ruolo Agente di servizio Cloud Run. Se l'agente di servizio non dispone di questo ruolo, concedilo.
Errore utente "root" non trovato in /etc/passwd
Quando provi a eseguire il deployment, si verifica il seguente errore:
ERROR: "User \"root\""not found in /etc/passwd
Il problema si verifica quando le chiavi di crittografia gestite dal cliente vengono specificate utilizzando un parametro chiave
Per risolvere questo problema, specifica USER 0
anziché USER root
nel
Dockerfile.
L'account di servizio Compute Engine predefinito è stato eliminato
Quando provi a eseguire il deployment, si verifica il seguente errore:
ERROR: (gcloud.run.deploy) User EMAIL_ADDRESS does not have permission to access namespace NAMESPACE_NAME (or it may not exist): Permission 'iam.serviceaccounts.actAs' denied on service account PROJECT_NUMBER-compute@developer.gserviceaccount.com (or it may not exist).
Questo problema si verifica in una delle seguenti situazioni:
- L'account di servizio Compute Engine predefinito non esiste nel progetto e non viene specificato nessun account di servizio con il flag
--service-account
gcloud
al momento del deployment. - Lo sviluppatore o l'entità che esegue il deployment del servizio non dispone delle autorizzazioni per l'account di servizio Compute Engine predefinito necessarie per il deployment.
Per risolvere il problema:
- Specifica un account di servizio utilizzando il flag
--service-account
gcloud
. - Verifica che l'account di servizio specificato disponga delle autorizzazioni necessarie per il deployment.
Se vuoi verificare se l'agente di servizio Compute Engine predefinito esiste nel tuo progetto Google Cloud, segui questi passaggi:
Apri la console Google Cloud:
Nell'angolo in alto a destra della pagina Autorizzazioni, seleziona la casella di controllo Includi concessioni dei ruoli fornite da Google.
Nell'elenco Entità, individua l'ID dell'agente di servizio Compute Engine, che utilizza l'ID
PROJECT_NUMBER-compute@developer.gserviceaccount.com
.
L'agente di servizio Cloud Run non ha l'autorizzazione per leggere l'immagine
Il seguente errore si verifica quando provi a eseguire il deployment da PROJECT-ID utilizzando un'immagine archiviata in Container Registry in PROJECT-ID-2:
Google Cloud Run Service Agent must have permission to read the image, gcr.io/PROJECT-ID/IMAGE-NAME. Ensure that the provided container image URL is correct and that above account has permission to access the image. If you just enabled the Cloud Run API, the permissions might take a few minutes to propagate. Note that PROJECT-ID/IMAGE-NAME is not in project PROJECT-ID-2. Permission must be granted to the Google Cloud Run Service Agent from this project.
Per risolvere il problema, segui questi consigli per la risoluzione dei problemi:
Segui le istruzioni per eseguire il deployment delle immagini container da altri progetti Google Cloud per assicurarti che le entità dispongano delle autorizzazioni necessarie.
Questo problema può verificarsi anche se il progetto si trova in un perimetro di Controlli di servizio VPC con una restrizione sull'API Cloud Storage che impedisce le richieste dell'agente di servizio Cloud Run. Per risolvere il problema:
Apri Esplora log nella console Google Cloud. (Non utilizzare la pagina Log all'interno della pagina di Cloud Run):
Inserisci il seguente testo nel campo della query:
protoPayload.@type="type.googleapis.com/google.cloud.audit.AuditLog" severity=ERROR protoPayload.status.details.violations.type="VPC_SERVICE_CONTROLS" protoPayload.authenticationInfo.principalEmail="service-PROJECT_NUMBER@serverless-robot-prod.iam.gserviceaccount.com"
Se dopo aver utilizzato questa query vengono visualizzate voci di log, esamina le voci dei log per determinare se è necessario aggiornare i criteri dei Controlli di servizio VPC. Potrebbe indicare che è necessario aggiungere
service-PROJECT_NUMBER@serverless-robot-prod.iam.gserviceaccount.com
a un criterio di accesso preesistente.
Errori di importazione del contenitore
Quando provi a eseguire il deployment, si verifica il seguente errore:
The service has encountered an error during container import. Please try again later. Resource readiness deadline exceeded.
Per risolvere il problema, escludi le seguenti potenziali cause:
Assicurati che il file system del container non contenga caratteri non utf8.
Alcune immagini Docker basate su Windows utilizzano livelli esterni. Anche se Container Registry non genera un errore in presenza di livelli esterni, il piano di controllo di Cloud Run non li supporta. Per risolvere il problema, puoi provare a impostare il flag
--allow-nondistributable-artifacts
nel daemon Docker.
Errori di pubblicazione
Questa sezione elenca i problemi che potresti riscontrare con la pubblicazione e fornisce suggerimenti per risolverli.
HTTP 401: il client non è autenticato correttamente
Durante l'elaborazione si verifica il seguente errore:
The request was not authorized to invoke this service
Per risolvere il problema:
Se viene richiamato da un account di servizio, la rivendicazione del pubblico (
aud
) del token ID firmato da Google deve essere impostata come segue:- L'URL Cloud Run del servizio di destinazione, utilizzando il modulo
https://service-xyz.run.app
.- Il servizio Cloud Run deve richiedere l'autenticazione.
- Il servizio Cloud Run può essere richiamato dall'URL di Cloud Run o tramite un URL del bilanciatore del carico.
- L'ID client di un ID client OAuth 2.0 di tipo applicazione web, utilizzando il modulo
nnn-xyz.apps.googleusercontent.com
.- Il servizio Cloud Run può essere richiamato tramite un bilanciatore del carico HTTPS protetto da IAP.
- Ciò è ideale per un GCLB supportato da più servizi Cloud Run in diverse regioni.
- Un segmento di pubblico personalizzato configurato che utilizza gli esatti valori forniti. Ad esempio,
se il segmento di pubblico personalizzato è
service.example.com
, anche il valore della dichiarazione del segmento di pubblico (aud
) deve essereservice.example.com
. Se il segmento di pubblico personalizzato èhttps://service.example.com
, anche il valore della rivendicazione del segmento di pubblico deve esserehttps://service.example.com
.
- L'URL Cloud Run del servizio di destinazione, utilizzando il modulo
Lo strumento jwt.io è utile per verificare le rivendicazioni su un JWT.
Se il formato del token di autenticazione non è valido, si verifica un errore
401
. Se il formato del token è valido e il membro IAM utilizzato per generare il token non dispone dell'autorizzazionerun.routes.invoke
, si verifica un errore403
.
HTTP 403: il client non è autorizzato a richiamare o chiamare il servizio
Il seguente errore potrebbe trovarsi in Cloud Logging con resource.type = "cloud_run_revision":
The request was not authenticated. Either allow unauthenticated invocations or set the proper Authorization header
Nella risposta HTTP restituita al client è presente il seguente errore:
403 Forbidden Your client does not have permission to get URL from this server.
Per risolvere questo problema, quando è presente l'errore resource.type = "cloud_run_revision" è presente l'errore di Cloud Logging:
- Se il servizio può essere chiamato da chiunque, aggiorna le impostazioni IAM per renderlo pubblico.
- Se il servizio deve essere chiamato solo da certe identità, assicurati di chiamarlo con il token di autorizzazione appropriato.
- Se la chiamata da uno sviluppatore è stata richiamata o la chiamata da un utente finale: assicurati che lo sviluppatore o l'utente disponga dell'autorizzazione
run.routes.invoke
, che puoi fornire tramite i ruoli Amministratore di Cloud Run (roles/run.admin
) e Invoker di Cloud Run (roles/run.invoker
). - Se Richiamato da un account di servizio: assicurati che l'account di servizio sia membro del servizio Cloud Run e che disponga del ruolo Invoker (
roles/run.invoker
) di Cloud Run. - Alle chiamate senza un token di autenticazione o con un token di autenticazione valido in formato, ma il membro IAM utilizzato per generare il token non dispone dell'autorizzazione
run.routes.invoke
, genera questo errore403
.
- Se la chiamata da uno sviluppatore è stata richiamata o la chiamata da un utente finale: assicurati che lo sviluppatore o l'utente disponga dell'autorizzazione
Per risolvere questo problema, quando l'errore resource.type = "cloud_run_revision" non è presente:
- Può essere restituito un codice di stato 403 quando un servizio ha il valore ingress configurato in
All
, ma è stato bloccato a causa dei Controlli di servizio VPC. Per ulteriori informazioni sulla risoluzione dei problemi relativi ai rifiuti di Controlli di servizio VPC, consulta la sezione successiva sugli errori 404.
HTTP 404: Non trovato
Durante la pubblicazione si verifica il seguente problema:
Si è verificato un errore HTTP 404
.
Per risolvere il problema:
Verifica che l'URL richiesto sia corretto controllando la pagina dei dettagli del servizio nella console Cloud o eseguendo questo comando:
gcloud run services describe SERVICE_NAME | grep URL
Controlla dove la logica dell'app potrebbe restituire i codici di errore
404
. Se la tua app restituisce404
, sarà visibile in Cloud Logging.Assicurati che la tua app non inizi l'ascolto sulla porta configurata prima di essere pronta a ricevere richieste.
Verifica che l'app non restituisca un codice di errore
404
quando la esegui localmente.
Viene restituito un valore 404
quando le impostazioni in entrata di un servizio Cloud Run sono impostate su "Interno" o "Interno e Cloud Load Balancing" e una richiesta non soddisfa la limitazione di rete specificata. In questo scenario, la richiesta non raggiunge il container e 404
non è presente in Cloud Logging con il seguente filtro:
resource.type="cloud_run_revision"
log_name="projects/PROJECT_ID/logs/run.googleapis.com%2Frequests"
httpRequest.status=404
Con le stesse impostazioni di traffico in entrata, la richiesta potrebbe essere bloccata dai Controlli di servizio VPC in base al contesto del chiamante, inclusi progetto e indirizzo IP. Per verificare la presenza di una violazione dei criteri dei Controlli di servizio VPC:
Apri Esplora log nella console Google Cloud (non nella pagina Log per Cloud Run):
Inserisci il seguente testo nel campo della query:
resource.type="audited_resource" log_name="projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fpolicy" resource.labels.method="run.googleapis.com/HttpIngress"
Se dopo aver utilizzato questa query vedi voci di log, esamina le voci dei log per determinare se devi aggiornare o meno i criteri dei Controlli di servizio VPC.
HTTP 429: nessuna istanza di container disponibile
Durante l'elaborazione si verifica il seguente errore:
HTTP 429 The request was aborted because there was no available instance. The Cloud Run service might have reached its maximum container instance limit or the service was otherwise not able to scale to incoming requests. This might be caused by a sudden increase in traffic, a long container startup time or a long request processing time.
Per risolvere il problema, controlla la metrica "Conteggio istanze container" per il tuo servizio e valuta la possibilità di aumentare questo limite se il tuo utilizzo sta per raggiungere il massimo. Consulta le impostazioni"Numero massimo di istanze" e, se hai bisogno di più istanze, richiedi un aumento della quota.
HTTP 500: Cloud Run non ha potuto gestire la frequenza del traffico
Il seguente errore si verifica durante la gestione e può verificarsi anche quando il servizio non ha raggiunto il limite massimo di istanze di container:
HTTP 500 The request was aborted because there was no available instance
Questo errore può essere causato da uno dei seguenti motivi:
- Un enorme improvviso aumento del traffico.
- Un'ora di avvio a freddo lunga.
- Un tempo di elaborazione della richiesta lungo o un improvviso aumento del tempo di elaborazione delle richieste.
- Il servizio sta raggiungendo il limite massimo di istanze di container (
HTTP 429
). - Fattori temporanei attribuiti al servizio Cloud Run.
Per risolvere il problema, risolvi i problemi elencati in precedenza.
Oltre a risolvere questi problemi, come soluzione alternativa puoi implementare il backoff esponenziale e nuovi tentativi per le richieste che il client non deve abbandonare.
Tieni presente che un breve e improvviso aumento del traffico o dei tempi di elaborazione delle richieste potrebbe essere visibile in Cloud Monitoring solo se aumenti lo zoom per una risoluzione di 10 secondi.
Se la causa principale del problema è un periodo di errori temporanei aumentati attribuibili esclusivamente a Cloud Run, puoi contattare l'assistenza
HTTP 500 / HTTP 503: le istanze di container superano i limiti di memoria
Durante l'elaborazione si verifica il seguente errore:
In Cloud Logging:
While handling this request, the container instance was found to be using too much memory and was terminated. This is likely to cause a new container instance to be used for the next request to this revision. If you see this message frequently, you may have a memory leak in your code or may need more memory. Consider creating a new revision with more memory.
Per risolvere il problema:
- Determina se le istanze di container superano la memoria disponibile.
Cerca gli errori correlati nei log
varlog/system
. - Se le istanze superano la memoria disponibile, ti consigliamo di aumentare il limite di memoria.
Tieni presente che in Cloud Run, i file scritti nel file system locale vengono conteggiati ai fini della memoria disponibile. Sono inclusi anche i file di log scritti in posizioni diverse da /var/log/*
e /dev/log
.
HTTP 503: formato non corretto della risposta o problema di connessione all'istanza di container
Durante la pubblicazione si verifica uno dei seguenti errori:
HTTP 503 The request failed because either the HTTP response was malformed or connection to the instance had an error.
Per risolvere il problema, segui questi consigli per la risoluzione dei problemi:
Controlla Cloud Logging Utilizza Cloud Logging per cercare errori di esaurimento della memoria nei log. Se vengono visualizzati messaggi di errore relativi alle istanze di container che superano i limiti di memoria, segui i consigli per risolvere il problema.
Timeout a livello di app Se le richieste vengono terminate con il codice di errore
503
prima di raggiungere il timeout della richiesta impostato in Cloud Run, potresti dover aggiornare l'impostazione di timeout della richiesta per il tuo framework di linguaggio:- Gli sviluppatori Node.js potrebbero dover aggiornare
la proprietà
server.timeout
tramiteserver.setTimeout
(utilizzaserver.setTimeout(0)
per ottenere un timeout illimitato) a seconda della versione in uso. [CRITICAL] WORKER TIMEOUT
Gli sviluppatori Python devono aggiornare il timeout predefinito di Gunicorn.
- Gli sviluppatori Node.js potrebbero dover aggiornare
la proprietà
Collo di bottiglia della rete downstream In alcuni casi, un codice di errore
503
può derivare indirettamente da un collo di bottiglia della rete downstream, ad esempio durante il test di carico. Ad esempio, se il tuo servizio instrada il traffico attraverso un connettore di accesso VPC serverless, assicurati che il connettore non abbia superato la soglia di velocità effettiva seguendo questi passaggi:Apri l'accesso VPC serverless nella console Google Cloud:
Controlla se sono presenti barre red nell'istogramma del grafico relativo alla velocità effettiva. Se è presente una barra red, valuta la possibilità di aumentare il numero massimo di istanze o il tipo di istanza utilizzato dal connettore. In alternativa, comprimi il traffico inviato tramite un connettore di accesso VPC serverless.
Limite di richieste in entrata per un singolo container Si è verificato un problema noto in cui sono presenti percentuali di richieste elevate per container che generano questo errore
503
. Se un'istanza di container riceve più di 800 richieste al secondo, i socket TCP disponibili possono essere esauriti. Per risolvere il problema, prova una delle seguenti operazioni:Attiva HTTP/2 per il tuo servizio e apporta le modifiche necessarie al servizio per supportare HTTP/2.
Evita di inviare più di 800 richieste al secondo a una singola istanza di container riducendo la contemporaneità configurata. Utilizza la seguente equazione per ottenere una stima della tasso di richieste per istanza di container:
requests/sec/container_instance ~= concurrency * (1sec / median_request_latency)
HTTP 503: impossibile elaborare alcune richieste a causa di un'impostazione di contemporaneità elevata
Durante la pubblicazione si verificano i seguenti errori:
HTTP 503 The Cloud Run service probably has reached its maximum container instance limit. Consider increasing this limit.
Questo problema si verifica quando le istanze di container utilizzano molta CPU per elaborare le richieste e, di conseguenza, non possono elaborare tutte le richieste e, di conseguenza, alcune richieste restituiscono un codice di errore 503
.
Per risolvere il problema, prova una o più delle seguenti operazioni:
Aumenta il numero massimo di istanze di container per il tuo servizio.
Ridurre la contemporaneità del servizio. Per istruzioni più dettagliate, consulta Impostare la contemporaneità.
HTTP 504: errore di timeout del gateway
HTTP 504 The request has been terminated because it has reached the maximum request timeout.
Se il tuo servizio elabora richieste lunghe, puoi aumentare il timeout della richiesta. Se il servizio non restituisce una risposta entro il tempo specificato, la richiesta termina e il servizio restituisce un errore HTTP 504
, come documentato nel contratto di runtime del container.
Per risolvere il problema, prova una o più delle seguenti operazioni:
Strumento di logging e tracciamento per capire dove trascorre il tempo la tua app prima di superare il timeout della richiesta configurato.
Le connessioni in uscita vengono reimpostate a volte a causa degli aggiornamenti dell'infrastruttura. Se l'applicazione riutilizza connessioni di lunga durata, ti consigliamo di configurare l'applicazione in modo da ristabilire le connessioni in modo da evitare il riutilizzo di connessioni non attive.
- A seconda della logica o della gestione degli errori dell'app, un errore
504
potrebbe indicare che l'applicazione sta tentando di riutilizzare una connessione non attiva e che la richiesta si blocca fino al timeout della richiesta configurata. - Puoi utilizzare un probe di attività per terminare un'istanza che restituisce errori persistenti.
- A seconda della logica o della gestione degli errori dell'app, un errore
Gli errori di memoria che si verificano all'interno del codice dell'app, ad esempio
java.lang.OutOfMemoryError
, non terminano necessariamente un'istanza di container. Se l'utilizzo della memoria non supera il limite di memoria del container, l'istanza non verrà arrestata. A seconda di come l'app gestisce gli errori di esaurimento della memoria a livello di app, le richieste potrebbero bloccarsi fino al superamento del timeout della richiesta configurata.- Se vuoi che l'istanza di container termini nello scenario precedente, configura il limite di memoria a livello di app in modo che sia maggiore di quello del container.
- Puoi utilizzare un probe di attività per terminare un'istanza che restituisce errori permanenti.
Connessione reimpostata dal peer
Durante la pubblicazione si verifica uno dei seguenti errori:
Connection reset by peer
asyncpg.exceptions.ConnectionDoesNotExistError: connection was closed in the middle of operation
grpc.StatusRuntimeException: UNAVAILABLE: io exception
psycopg.OperationalError: the connection is closed
ECONNRESET
Questo errore si verifica quando un'applicazione ha stabilito una connessione TCP con un peer sulla rete e il peer chiude inaspettatamente la connessione.
Per risolvere il problema:
Se stai cercando di eseguire operazioni in background con la limitazione della CPU, prova a utilizzare l'impostazione "CPU sempre allocata".
Assicurati di essere entro i timeout delle richieste in uscita. Se l'applicazione mantiene una connessione in stato di inattività oltre questa soglia, il gateway deve acquisire nuovamente la connessione.
Per impostazione predefinita, l'opzione del socket TCP
keepalive
è disabilitata per Cloud Run. Non esiste un modo diretto per configurare l'opzionekeepalive
in Cloud Run a livello di servizio, ma puoi abilitare l'opzionekeepalive
per ogni connessione socket fornendo le opzioni socket corrette quando apri una nuova connessione socket TCP, a seconda della libreria client che stai utilizzando per questa connessione nella tua applicazione.A volte, le connessioni in uscita vengono reimpostate a causa degli aggiornamenti dell'infrastruttura. Se l'applicazione riutilizza connessioni di lunga durata, ti consigliamo di configurare l'applicazione in modo da ristabilire le connessioni in modo da evitare il riutilizzo di connessioni non attive.
Firma del token di identità oscurata da Google
Durante la pubblicazione si verificano i seguenti errori:
SIGNATURE_REMOVED_BY_GOOGLE
Questo può verificarsi durante lo sviluppo e i test nei seguenti casi:
- Un utente accede utilizzando Google Cloud CLI o Cloud Shell.
- L'utente genera un token ID utilizzando i comandi
gcloud
. - L'utente tenta di utilizzare il token ID per richiamare un servizio Cloud Run non pubblico.
Si tratta del comportamento previsto. Google rimuove la firma del token a causa di problemi di sicurezza per impedire a qualsiasi servizio Cloud Run non pubblico di riprodurre i token ID generati in questo modo.
Per risolvere il problema, richiama il servizio privato con un nuovo token ID. Per ulteriori informazioni, consulta la sezione Test dell'autenticazione nel servizio.
Avviso OpenBLAS nei log
Se utilizzi librerie basate su OpenBLAS come NumPy con l'ambiente di esecuzione di prima generazione, nei log potrebbe essere visualizzato il seguente avviso:
OpenBLAS WARNING - could not determine the L2 cache size on this system,
assuming 256k
Questo è solo un avviso e non ha alcun impatto sul tuo servizio. Questo avviso genera perché la sandbox dei container utilizzata dall'ambiente di esecuzione di prima generazione non espone funzionalità hardware di basso livello. Facoltativamente, puoi passare all'ambiente di esecuzione di seconda generazione se non vuoi visualizzare questi avvisi nei log.
Spark non riesce quando si ottiene l'indirizzo IP della macchina da associare
Durante la pubblicazione si verifica uno dei seguenti errori:
assertion failed: Expected hostname (not IP) but got <IPv6 ADDRESS>
assertion failed: Expected hostname or IPv6 IP enclosed in [] but got <IPv6 ADDRESS>
Per risolvere il problema:
Per modificare il valore della variabile di ambiente e risolvere il problema, imposta ENV
SPARK_LOCAL_IP="127.0.0.1"
nel tuo Dockerfile. In Cloud Run, se la variabile SPARK_LOCAL_IP
non è impostata, verrà utilizzata per impostazione predefinita la sua controparte IPv6 anziché localhost. Tieni presente che l'impostazione RUN export SPARK_LOCAL_IP="127.0.0.1"
non sarà disponibile in runtime e Spark agirà come se non fosse stata impostata.
Mapping di domini personalizzati
Il dominio personalizzato è bloccato nello stato di provisioning del certificato
Quando provi a mappare un dominio personalizzato, si verifica uno dei seguenti errori:
The domain is available over HTTP. Waiting for certificate provisioning. You must configure your DNS records for certificate issuance to begin and to accept HTTP traffic.
Waiting for certificate provisioning. You must configure your DNS records for certificate issuance to begin.
Per risolvere il problema:
- Attendi almeno 24 ore. Il provisioning del certificato SSL richiede in genere circa 15 minuti, ma in alcuni casi possono essere necessarie fino a 24 ore.
Verifica di aver aggiornato correttamente i record DNS nel registrar di domini utilizzando lo strumento di esplorazione degli Strumenti amministrativi Google
I record DNS nel tuo registrar di dominio devono corrispondere ai messaggi che ti vengono richiesti dalla console Google Cloud.
Conferma che la principale del dominio sia verificata nel tuo account utilizzando uno dei seguenti metodi:
- Segui le istruzioni per aggiungere proprietari di dominio verificati e controlla che il tuo account sia elencato come Proprietario verificato.
- Utilizza Search Console.
Verifica che il certificato del dominio non sia scaduto. Per trovare i limiti di scadenza, utilizza il seguente comando:
echo | openssl s_client -servername 'ROOT_DOMAIN' -connect 'ROOT_DOMAIN:443' 2>/dev/null | openssl x509 -startdate -enddate -noout
API Admin
La funzionalità non è supportata nella fase di lancio dichiarata
Quando chiami l'API Cloud Run Admin, si verifica il seguente errore:
The feature is not supported in the declared launch stage
Questo errore si verifica quando chiami direttamente l'API Cloud Run Admin e utilizzi una funzionalità beta senza specificare un'annotazione della fase di avvio.
Per risolvere il problema, annota alla risorsa con un valore run.googleapis.com/launch-stage
pari a BETA
nella richiesta se viene utilizzata qualsiasi funzionalità beta.
Nell'esempio seguente viene aggiunta un'annotazione della fase di avvio a una richiesta di servizio:
kind: Service metadata: annotations: run.googleapis.com/launch-stage: BETA
La disconnessione del client non si propaga a Cloud Run
Quando utilizzi HTTP/1.1 su Cloud Run, gli eventi di disconnessione del client non vengono propagati al container Cloud Run.
La soluzione consiste nell'utilizzare WebSocket o HTTP/2.0, che propagano le disconnessioni del client.
Risoluzione dei problemi relativi al file system di rete
Scopri di più sull'utilizzo dei file system di rete.
Impossibile accedere ai file utilizzando NFS
Errore | Rimedio suggerito |
---|---|
mount.nfs: Protocol not supported |
In alcune immagini di base, ad esempio debian e adoptopenjdk/openjdk11 , manca la dipendenza nfs-kernel-server. |
mount.nfs: Connection timed out |
In caso di timeout della connessione, assicurati di fornire l'indirizzo IP corretto dell'istanza di Filestore. |
mount.nfs: access denied by server while mounting IP_ADDRESS:/FILESHARE |
Se l'accesso è stato negato dal server, verifica che il nome della condivisione file sia corretto. |
Impossibile accedere ai file utilizzando Cloud Storage FUSE
Consulta la guida alla risoluzione dei problemi di Cloud Storage FUSE.