Ultima actualizare la 10 martie 2020 10:00 PST
Simptome
Este posibil să întâmpinați probleme cu utilizarea containerelor Windows Server dacă gazda sau imaginea containerului are actualizarea de securitate din 11 februarie 2020, cu excepția cazului în care atât gazda de container Windows, cât și imaginile din containerul Windows Server sunt corelate cu actualizarea de securitate din 11 februarie 2020.
Iată câteva dintre simptomele ce apar atunci când rulați sau creați un container:
-
Atunci când rulați comanda „docker run” sau „docker build”, este posibil să nu primiți rezultate și să nu mai răspundă.
-
Containerul dvs. Windows Server din Kubernetes nu ajunge la starea „rulează”.
-
Primiți eroarea „docker: răspuns de eroare de la daemon: containerul <id> a întâmpinat o eroare la Start: eroare cu un apel de sistem Windows: operațiunea de așteptare a expirat. (0x102).”
-
Aplicația sau procesele dvs. pe 32 de biți care rulează în interiorul containerului pot să nu reușească, în mod silențios.
Cauza
Această problemă a fost rezultatul unei modificări de securitate care necesita o modificare a interfeței între modul utilizator și modul kernel. Deoarece containerele izolate de proces partajează modul kernel cu gazda containerului și imaginile de container, componenta modului de utilizator fără actualizare era atât incompatibilă, cât și nesecurizată cu noua interfață de kernel securizată.
Rezoluție și soluție de evitare
Am adăugat noi instrucțiuni de actualizare pe site-ul Documente despre containerul Windows, în secțiunile Compatibilitatea versiunilor de container Windows și Actualizarea containerelor Windows Server. De asemenea, sunt incluse detalii despre compatibilitatea și matricea actualizărilor. Pentru informații despre problemele specifice listate în acest articol, consultați rezoluția și atenuarea de mai jos.
Rezoluția pentru problemele „nu rulează” și „aplicațiile pe 32 de biți nu reușesc în mod silențios” (simptom 1, 2, 3, 4):
Pe 18 februarie 2020, au fost lansate imagini de container actualizate pentru a trata problemele cu simptomele (1, 2, 3, 4) din acest articol. Dacă întâmpinați aceste probleme, vă recomandăm să actualizați gazda containerului dvs. la versiunea actualizării de securitate din 11 februarie 2020 și la imaginile de container lansate pe 18 februarie 2020. Notă Versiunea din 18 februarie 2020 este doar pentru imagini de container. Actualizările de securitate din 11 februarie 2020 sunt încă cele mai recente pentru gazda de container.
Pentru a rezolva problema în mediul dvs., rulați din nou comanda extragere pentru a actualiza imaginile de sistem de operare de bază Windows Server sau imaginea de container aplicabilă, cum ar fi IIS sau .NET și rulați din nou canalul de automatizare pentru a vă reconstrui containerele utilizând imagini de container cu imaginea de container din 18 februarie 2020.
Important Dacă ați modificat etichetele de extragere sau automatizarea ca soluție de evitare pentru problemele din acest articol, ar trebui să readuceți modificările la etichetele anterioare de extragere. Nu mai trebuie să utilizați o versiune specifică.
Atenuarea problemei „aplicațiile pe 32 de biți nu reușesc în mod silențios” (simptom 4):
Vă recomandăm insistent să actualizați gazda containerului la actualizarea de securitate din 11 februarie 2020, așa cum este descris mai sus. Dacă nu reușiți să actualizați gazda containerului la actualizările de securitate din 11 februarie 2020, va trebui să potriviți versiunea și versiunea de revizie a imaginii de container cu versiunea și versiunea de revizie a sistemului de operare gazdă de container. Pentru instrucțiuni despre cum să verificați versiunea gazdei dvs. de container, consultați acest articol. După ce aveți versiunea din gazda dvs. de container, puteți să extrageți versiunea de imagine de container utilizând următoarea comandă (va trebui să ajustați imaginea de sistem de operare de bază Windows Server și versiunea, după cum se aplică în mediul dvs.). De exemplu, dacă utilizați containerul Windows Server Core:
docker pull mcr.microsoft.com/windows/servercore:<versiunea gazdei de container, cum ar fi 10.0.17763.1040>
După ce versiunile gazdei și imaginii de container se potrivesc, ar trebui să puteți relua comenzile de container, cum ar fi rularea sau crearea.
Notă Vă recomandăm să modificați etichetele de extragere sau automatizarea doar dacă întâmpinați aplicații care eșuează în mod silențios.
Referințe
Lista de mai jos afișează versiunile de Windows Server pentru care acceptăm imagini de container, împreună cu numerele de versiune pentru actualizările de securitate lansate la 14 ianuarie 2020 și 11 februarie 2020, precum și versiunea doar pentru imagini de container din 18 februarie 2020. Imaginile de container lansate pe 18 februarie 2020 listate mai jos vor fi extrase automat dacă nu specificați versiunea în etichetele dvs. flotante.
Versiune de Windows Server (etichetă flotantă) |
Versiune de actualizare pentru ediția din 14 ianuarie 2020 |
Versiune de actualizare pentru 11 februarie 2020 |
Versiune de actualizare pentru 18 februarie 2020 |
Windows Server 2016 (ltsc2016) |
10.0.14393.3443 |
10.0.14393.3504 |
10.0.14393.3506 |
Windows Server, versiunea 1803 (1803) |
10.0.17134.1246 |
10.0.17134.1304 |
10.0.17134.1305 |
Windows Server 2019 (ltsc2019) Windows Server, versiunea 1809 (1809) |
10.0.17763.973 |
10.0.17763.1039 |
10.0.17763.1040 |
Windows Server, versiunea 1903 (1903) |
10.0.18362.592 |
10.0.18362.657 |
10.0.18362.658 |
Windows Server, versiunea 1909 (1909) |
10.0.18363.592 |
10.0.18363.657 |
10.0.18363.658 |
Dacă utilizați imagini de mașină virtuală Azure Marketplace cu containere, imaginile din februarie 2020 sunt disponibile acum. Nu ar trebui să întâmpinați problemele sau simptomele de mai sus atunci când utilizați aceste imagini. Pentru mai multe informații, consultați KB4540981.
Pentru o listă completă a imaginii de container Windows, consultați pagina Hubului Docker aici.
Pentru mai multe informații detaliate despre containerele Windows Server, consultați https://aka.ms/containers.