2014-10-07 10 views
9

Buona giornata.Tutte le immagini e i contenitori sono scomparsi dopo il downgrade del kernel dell'host

Sulla macchina host è stato installato il kernel 3.16. Dopo l'installazione del kernel 3.14 tramite pacchetto deb ho perso tutte le immagini e i contenitori del docker. L'output dei comandi "immagini docker" e "docker ps -a" è vuoto. Questo normale comportamento della finestra mobile?

Grazie.

+0

Si dovrebbe chiedere questo su https://unix.stackexchange.com/ – Jerodev

+0

Sono di fronte a questo durante l'aggiornamento del mio kernel host da 3,16 a 3,18. Cordiali saluti, il mio ospite è Ubuntu. –

risposta

10

Risponderò a me stesso. Potrebbe essere utile qualcuno.

Docker ha utilizzato il driver di archiviazione "aufs" sul vecchio kernel. Pertanto è necessario caricare il modulo "aufs.ko". Nel nuovo supporto per il kernel, aufs non è stato abilitato e la finestra mobile ha iniziato a utilizzare il driver di archiviazione "devicemapper".

+0

Grazie per la ricerca, ho riscontrato un problema simile all'aggiornamento alla v3.17.1 con l'assenza di kmod. Sei riuscito a installare un modulo aufs per recuperare i contenitori e le immagini? – Mark

2

Come sottolinea Denis Pitikov, le immagini e i contenitori possono scomparire se il driver di archiviazione che li ha creati (ad esempio aufs) non è più disponibile.

Quando si esegue su Ubuntu 14.04, l'attuale Docker install script installa automaticamente il pacchetto linux-image-extra-* (adatto per la versione corrente del kernel). Questo include il modulo del kernel aufs.

Su alcuni sistemi, il pacchetto linux-image-generic potrebbe non essere installato. Su questi sistemi, la volta successiva che si esegue un dist-upgrade, il kernel verrà aggiornato ma il corrispondente linux-image-extra-* non verrà installato. Al riavvio non si avrà il modulo aufs e i contenitori e le immagini potrebbero essere scomparsi.

per risolvere il problema: in primo luogo, verificare che si sta eseguendo un kernel generico già:

$ uname -r 
3.13.0-49-generic 

Se è così, prendere in considerazione l'installazione di linux-image-generic:

$ apt-get install linux-image-generic 

che aggiornerà il kernel alla versione richiesto da quel pacchetto e installerà anche il pacchetto -extra.

3

Per effettivamente risolvere su Ubuntu, eseguire

sudo apt-get -y install linux-image-extra-$(uname -r)

Questo installerà il modulo aufs kernel che richiede finestra mobile, ma può essere perso durante gli aggiornamenti del kernel. Non sono sicuro del motivo per cui il gestore pacchetti manchi questa dipendenza.

+0

Non si ripeterà più la volta successiva che il kernel viene aggiornato? – z0r

Problemi correlati