Microsoft ha pubblicato WSL 3.0 con supporto per l'esecuzione di contenitori Linux su Windows

La Microsoft ha presentato il rilascio dello strumento WSL 3.0 (Windows Subsystem for Linux), che consente di eseguire applicazioni Linux su Windows. La nuova versione è notevole per l'implementazione della possibilità di avviare contenitori Linux su Windows e per la transizione all'uso del kernel Linux 6.18. Il codice delle utility della riga di comando utilizzate in WSL, dei processi in background per ambienti Linux, dei servizi per l'avvio dei contenitori e della macchina virtuale, così come il stack grafico wslg, è aperto con licenza MIT. Le modifiche al kernel Linux sono fornite sotto licenza GPLv2.

WSL fornisce una macchina virtuale con un kernel Linux completo (basato sulla versione 6.18), in cui possono essere eseguiti distribuzioni Linux. Il kernel include modifiche specifiche per WSL, come ottimizzazioni per ridurre il tempo di avvio e il consumo di memoria, la possibilità di restituire a Windows la memoria liberata dai processi Linux e impostazioni per escludere driver e sottosistemi non necessari. Il sistema è installato in un'immagine disco separata (VHD) con file system ext4 e un adattatore di rete virtuale.

La nuova versione include strumenti per la creazione, distribuzione e avvio di contenitori Linux su Windows, che comprendono l'interfaccia della riga di comando wslc (WSL Containers) e un'API correlata che consente di avviare contenitori Linux da programmi Windows. Le principali funzionalità di wslc sono:

  • Operazioni per gestire il ciclo di vita dei contenitori, come creazione, avvio, arresto, esportazione, pulizia, ispezione, verifica dello stato, invio di eventi di attività del contenitore, copia di file dentro e fuori dal contenitore.
  • Limitazione del consumo di CPU e memoria per singoli container.
  • Costruzione, caricamento, invio, importazione, salvataggio e verifica delle immagini di sistema. Comandi per visualizzare elenchi di immagini disponibili. Operazioni batch su più immagini contemporaneamente. Possibilità di impacchettare più immagini in un unico archivio tar.
  • Creazione e gestione di reti virtuali. Collegamento di contenitori a più reti. Creazione di tipi di reti personalizzati. Inoltro delle porte di rete.
  • Creazione, visualizzazione e eliminazione di partizioni. Gestione di dischi virtuali (VHD).
  • Accesso alla GPU dai contenitori e fornitura di librerie per consentire agli utenti non privilegiati di lavorare con la GPU.
  • Creazione di sessioni su richiesta, assegnazione di nomi alle sessioni, posizioni di archiviazione configurabili.
  • SDK con API per automatizzare il lavoro con i container da programmi in C++ e C# / WinRT.
  • Comando "wslc logs" per visualizzare e filtrare dati dai log. Output delle statistiche di funzionamento del container. Evidenziazione dell'output nell'utilità "wslc".
  • Integrazione con MSBuild e CMake.
  • Supporto per la gestione tramite politiche di gruppo ADMX.
  • Supporto per l'estensione del container di sviluppo di VS Code per eseguire e costruire codice in sviluppo all'interno di un container.
  • Possibilità di utilizzare wslc come runtime per eseguire contenitori nello strumento Aspire.
  • Estensione del vscode-container-client per gestire i contenitori dall'editor di codice VS Code.
  • Gestione dei contenitori wslc tramite l'interfaccia testuale Lazywslc o l'applicazione desktop WinUI 3.
  • Involucro per avviare contenitori Linux da distribuzioni Linux in esecuzione su WSL.

Nei contenitori, per impostazione predefinita, viene utilizzato il file system «virtiofs», che mostra un raddoppiamento della velocità di accesso ai file di Windows, e la modalità di rete «consomme», che assicura una migliore compatibilità con configurazioni di rete diverse (VPN, proxy, ecc.). In modalità «consomme», il traffico Linux viene inoltrato attraverso Windows, permettendo di utilizzare per le applicazioni Linux tutte le funzionalità dell'ambiente di rete Windows, comprese le politiche di sicurezza e gli strumenti per l'integrazione con i sistemi aziendali.

L'esecuzione dei contenitori è gestita dal servizio Windows privilegiato wslservice.exe, che avvia macchine virtuali e li utilizza per eseguire Linux. A differenza di WSL, il servizio wslservice.exe crea per i contenitori un processo figlio wslcsession.exe, eseguito con i diritti dell'utente attuale e che si occupa di operazioni come la creazione di contenitori, il montaggio di directory e l'inoltro delle porte di rete. Diverse sessioni sono rigorosamente isolate l'una dall'altra e funzionano in processi separati. A ciascuna sessione è associato un archivio VHD separato, collocato nella cartella %AppData%\Local\wslc\sessions. È possibile montare nei contenitori Linux percorsi Windows per la condivisione dei file.



Fonte: opennet.ru
Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS - ProHoster