Problemi con l'interfaccia a riga di comando Migrate to Containers
Questo documento descrive le soluzioni alternative per alcuni problemi che potresti riscontrare durante l'utilizzo dell'interfaccia a riga di comando Migrate to Containers.
L'operazione di copia non va a buon fine a causa di errori di autorizzazione
Per ottenere l'accesso in lettura all'intero file system, il comando copy
viene eseguito utilizzando un super user sulla macchina di origine. Tuttavia, a volte l'operazione di copia continua a non riuscire a causa di errori di autorizzazione. Questo problema si verifica perché in alcuni casi anche il super user non ha accesso in lettura ad alcune directory sulla macchina di origine.
In questi casi, potresti visualizzare un messaggio di errore simile al seguente:
E rsync rsync: send_files failed to open "/var/lib/lxcfs/cgroup/blkio/blkio.reset_stats": Permission denied (13)
...
E rsync rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1865) [generator=3.2.7]
Error: failed to copy fs from GCP VM "petclinic-springboot": failed copying vm to "/tmp/copy-1411243774": exit status 23
Per risolvere il problema, crea un filtro personalizzato per escludere queste directory dall'operazione di copia.
Ad esempio, per escludere la directory /var/lib/lxcfs
dall'operazione di copia, aggiungi il seguente filtro personalizzato nel file dei filtri:
- /var/lib/lxcfs
Per scoprire di più, consulta Ridurre le dimensioni del file system copiato.
L'autenticazione sulla macchina dell'operazione di copia utilizzando gcloud
non riesce
Se utilizzi gcloud
per eseguire il comando copy
con sudo
, in alcuni casi
l'operazione di copia potrebbe non riuscire a eseguire l'autenticazione sulla macchina di origine. Questo problema si verifica perché gcloud
viene eseguito con lo stesso super user che esegue l'interfaccia a riga di comando Migrate to Containers e il super user non ha le stesse credenziali dell'utente standard.
In questi casi, potresti visualizzare un messaggio di errore simile al seguente:
E ssh init ERROR: (gcloud.compute.ssh) There was a problem refreshing your current auth tokens: ('Failed to retrieve TOKEN from the Google Compute Engine metadata service. Status: 404 Response:\nb\'"No service account scopes specified."\'', <google.auth.transport.requests._Response object at 0x7fecf5c75550>)
E ssh init Please run:
E ssh init
E ssh init $ gcloud auth login
E ssh init
E ssh init to obtain new credentials.
E ssh init
E ssh init If you have already logged in with a different account:
E ssh init
E ssh init $ gcloud config set account ACCOUNT
E ssh init
E ssh init to select an already authenticated account to use.
Error: failed to initiate a connection with GCP VM "tomcat-server": exit status 1
Per risolvere il problema, prova a eseguire il comando copy
utilizzando gcloud
senza sudo
.
Il comando analyze
non riesce quando si utilizza la versione Snap di Docker
Se utilizzi la versione Snap di Docker, il comando analyze
non riesce.
In questi casi, potresti visualizzare un messaggio di errore simile al seguente:
I Unpacking file system...
I Running analysis...
Error: running analysis failed: failed to run container: Error response from daemon: invalid mount config for type "bind": bind source path does not exist: PATH
Per risolvere il problema, installa di nuovo Docker senza utilizzare Snap. Per ulteriori informazioni, vedi Installare Docker Engine.