Ultimo aggiornamento 10 marzo 2020 10:00 AM PST
Sintomi
Potresti riscontrare problemi nell'uso dei contenitori Windows Server se l'immagine del contenitore o dell'host del contenitore ha l'aggiornamento della sicurezza dell'11 febbraio 2020, a meno che l'host del contenitore Windows e le immagini del contenitore Windows Server non corrispondano a quelle dell'aggiornamento della sicurezza dell'11 febbraio 2020.
I sintomi durante l'esecuzione o la creazione di un contenitore possono includere:
-
Quando esegui il comando "docker run" o "docker build", potresti non ricevere l'output e potrebbe non rispondere.
-
Il contenitore Windows Server in Kubernetes non raggiunge lo stato "In esecuzione".
-
Visualizzi l'errore "docker: risposta di errore da daemon: il contenitore <id> ha riscontrato un errore durante l'avvio: errore durante una chiamata di sistema Windows: timeout dell'operazione di attesa. (0x102)".
-
L'applicazione a 32 bit o i processi in esecuzione all'interno del contenitore potrebbero non riuscire in modo invisibile all'utente.
Causa
Questo problema è stato il risultato di una modifica della sicurezza che ha richiesto una modifica dell'interfaccia tra la modalità utente e la modalità kernel. Poiché i contenitori isolati di processo condividono la modalità kernel con l'host del contenitore e le immagini del contenitore, il componente in modalità utente senza l'aggiornamento è incompatibile e non è protetto con la nuova interfaccia del kernel protetta.
Risoluzione e soluzione alternativa
Sono state aggiunte nuove linee guida per gli aggiornamenti nel sito della documentazione dei container di Windows nelle sezioni Compatibilità delle versioni dei contenitori di Windows e Aggiornamento dei container di Windows Server. Sono inoltre disponibili informazioni dettagliate sulla compatibilità degli aggiornamenti e sulla matrice. Per informazioni sui problemi specifici elencati in questo articolo, vedi la sezione relativa alla risoluzione e alla prevenzione di seguito.
Risoluzione per i problemi di "non esecuzione" e "applicazioni a 32 bit che non riescono in modo invisibile all'utente" (sintomo 1, 2, 3, 4):
Il 18 febbraio 2020 sono state rilasciate le immagini dei contenitori aggiornate per risolvere i problemi relativi ai sintomi (1, 2, 3, 4) in questo articolo. Se riscontri questi problemi, ti consigliamo di aggiornare l'host del contenitore alla versione dell'aggiornamento della sicurezza dell'11 febbraio 2020 e alle immagini del contenitore rilasciate il 18 febbraio 2020. Nota: la versione del 18 febbraio 2020 è solo per le immagini del contenitore. Gli aggiornamenti della sicurezza dell'11 febbraio 2020 sono ancora i più recenti per l'host del contenitore.
Per risolvere il problema nel tuo ambiente, esegui nuovamente il comando pull per aggiornare le immagini del sistema operativo di base di Windows Server o l'immagine del contenitore applicabile, ad esempio IIS o .NET ed esegui nuovamente la pipeline di automazione per ricostruire i contenitori utilizzando le immagini del contenitore con l'immagine del contenitore del 18 febbraio 2020.
Importante: se hai modificato i tag di pull o l'automazione come soluzione alternativa per i problemi in questo articolo, devi ripristinare le modifiche apportate ai tag di pull precedenti. Non dovresti più dover utilizzare una versione specifica.
Attenuazione per il problema "applicazioni a 32 bit senza errori" (sintomo 4):
Ti consigliamo vivamente di aggiornare l'host del contenitore all'aggiornamento della sicurezza dell'11 febbraio 2020, come descritto sopra. Se non riesci ad aggiornare l'host del contenitore agli aggiornamenti della sicurezza dell'11 febbraio 2020, dovrai eseguire l'aggiornamento alla build e alla versione di revisione dell'immagine del contenitore con la build e la versione della revisione del sistema operativo dell'host del contenitore. Per istruzioni su come verificare la versione dell'host del contenitore, vedi questo articolo. Dopo aver scaricato la versione dall'host del contenitore, puoi eseguire il pull della versione dell'immagine del contenitore utilizzando il comando seguente (dovrai modificare l'immagine del sistema operativo di base di Windows Server e la relativa versione applicata nel tuo ambiente). Ad esempio, se usi il contenitore Windows Server Core:
docker pull mcr.microsoft.com/windows/servercore:<version your container host, such as 10.0.17763.1040>
Quando le versioni dell'host del contenitore e dell'immagine del contenitore corrisponderanno, sarai in grado di riprendere i comandi del contenitore, ad esempio l'esecuzione o la compilazione.
Nota: ti consigliamo di modificare solo i tag di pull o l'automazione se stai riscontrando problemi con applicazioni che non riescono in modo invisibile all'utente.
Riferimenti
Nell'elenco seguente sono riportate le versioni di Windows Server per le quali sono supportate le immagini dei contenitori, insieme ai numeri delle versioni per gli aggiornamenti della sicurezza rilasciati il 14 gennaio 2020 e l'11 febbraio 2020 e la versione solo immagini del contenitore del 18 febbraio 2020. Il pull delle immagini del contenitore rilasciate il 18 febbraio 2020 verrà eseguito automaticamente se non specifichi la versione nei tag mobili.
Versione di Windows Server (tag mobile) |
Versione di aggiornamento per la versione del 14 gennaio 2020 |
Versione di aggiornamento per la versione dell'11 febbraio 2020 |
Versione di aggiornamento per la versione del 18 febbraio 2020 |
Windows Server 2016 (ltsc2016) |
10.0.14393.3443 |
10.0.14393.3504 |
10.0.14393.3506 |
Windows Server, versione 1803 (1803) |
10.0.17134.1246 |
10.0.17134.1304 |
10.0.17134.1305 |
Windows Server 2019 (ltsc2019) Windows Server, versione 1809 (1809) |
10.0.17763.973 |
10.0.17763.1039 |
10.0.17763.1040 |
Windows Server, versione 1903 (1903) |
10.0.18362.592 |
10.0.18362.657 |
10.0.18362.658 |
Windows Server, versione 1909 (1909) |
10.0.18363.592 |
10.0.18363.657 |
10.0.18363.658 |
Se utilizzi immagini di macchine virtuali di Azure Marketplace con contenitori, ora sono disponibili le immagini di febbraio 2020. Non dovresti riscontrare i problemi o i sintomi precedenti usando queste immagini. Per ulteriori informazioni, vedi KB4540981.
Per un elenco completo dell'immagine del contenitore di Windows, fai riferimento alla pagina Docker Hub qui.
Per informazioni più dettagliate sui contenitori di Windows Server, vedi https://aka.ms/containers.