Lanciato ufficialmente il contenitore Microsoft WSL, Windows diventa ulteriormente la piattaforma di esecuzione del contenitore Linux

📅 2026-10-01

Riassunto:

Microsoft ha spostato i contenitori WSL da un'anteprima pubblica a una versione disponibile a livello generale. Gli utenti possono eseguire "wsl --update" per ottenere le funzioni correlate, incluso lo strumento da riga di comando wslc.exe e l'API WSL Containers. Sebbene il numero di versione della versione ufficiale su GitHub sia WSL 3.0.1, ciò non significa che Microsoft abbia lanciato WSL 3; Microsoft ha precedentemente negato l'esistenza di questa nuova versione.

In precedenza, se gli sviluppatori Windows volevano eseguire contenitori Linux, in genere dovevano installare Docker Desktop o configurare manualmente Docker Engine nella distribuzione WSL Linux. WSL Containers integra i flussi di lavoro dei contenitori direttamente in WSL. wslc.exe può essere utilizzato per creare, eseguire, gestire e distribuire contenitori Linux da Windows. Fornisce inoltre container.exe come alias. Anche gli sviluppatori che hanno familiarità con Docker possono utilizzare comandi simili. L'API di supporto consente alle applicazioni Windows native di creare e controllare contenitori Linux tramite codice e supporta chiamate C# e C++/WinRT, input e output standard, montaggio di file, accesso alla rete e alla GPU.

Aggiornamento-WSL-alla-versione-3.0.1-to-get-Containers-in-general-availability.jpg

"Nativo" qui non significa che il contenitore viene eseguito sul kernel di Windows. Il contenitore viene effettivamente eseguito nel kernel Linux nella macchina virtuale WSL. Microsoft ha riprogettato la modalità di gestione delle sessioni contenitore. Le normali applicazioni WSL creano macchine virtuali tramite il servizio Windows wslservice.exe con autorizzazioni più elevate; WSL Containers utilizza il servizio per creare un sottoprocesso denominato wslcsession.exe, che crea contenitori, monta directory e associa le porte di rete per conto dell'utente. Microsoft ha affermato che ogni sessione è ospitata da un processo indipendente, che può rafforzare l'isolamento; anche le autorizzazioni richieste per le operazioni di sessione sono inferiori rispetto a wslservice.exe, il che aiuta a migliorare la sicurezza.

Ogni sessione dispone di un disco rigido virtuale indipendente, che viene salvato nella directory dei dati dell'applicazione utente. I contenitori possono utilizzare le cartelle Windows tramite i montaggi di volume. Microsoft utilizza virtiofs per condividere directory con macchine virtuali, affermando che è circa due volte più veloce della soluzione Plan 9 utilizzata dalle tradizionali distribuzioni WSL per accedere all'unità C. Per i contenitori che richiedono file system Linux nativi o capacità di archiviazione limitata, è possibile utilizzare volumi di dischi rigidi virtuali.

wslc-ubuntu.jpgL'esecuzione-di-uname-a-dentro-un-contenitore-WSL-conferma-che-è-un-vero-kernel-Linux-non-un-livello-di-traduzione.png

La versione ufficiale aggiunge comandi come il riavvio del contenitore, la copia dei file, la connessione e la disconnessione di rete, più opzioni dei driver di rete, il controllo dello stato del contenitore e il montaggio delle directory durante la creazione e l'esecuzione dei contenitori. La rete introduce anche un'architettura denominata Consommé. Il traffico di rete della macchina virtuale Linux entrerà nella coda virtio sotto forma di frame Ethernet, quindi il processo Windows verrà eseguito mentre l'utente gestisce le query DNS, il traffico TCP e UDP e la mappatura delle porte. Microsoft ha affermato che questo metodo è più compatibile con VPN e firewall e migliorerà i problemi di rete che gli utenti WSL riscontrano da tempo. Nei test precedenti, Windows poteva accedere al servizio Flask in esecuzione nel contenitore tramite localhost senza ulteriore configurazione di rete.

Il-server-Flask-all'interno-del-contenitore-Linux-raggiunto-attraverso-l'host-locale-su-Windows-senza-configurazione-di-rete-extra.png

Microsoft sta inoltre aggiungendo funzionalità di gestione e sicurezza per uso aziendale. Gli amministratori IT possono abilitare o disabilitare i contenitori WSL tramite Microsoft Intune e limitare l'estrazione delle immagini dei contenitori solo dai registri approvati. L'integrazione WSL esistente di Microsoft Defender for Endpoint viene estesa anche ai contenitori, mostrando l'attività di processi, file e rete all'interno del contenitore e correlandola all'host Windows. Microsoft ha affermato che queste funzionalità, combinate con Intune e Defender, possono fornire i controlli di sicurezza necessari per gli ambienti aziendali.

wslc-shows-the-full-command-list.jpg

In termini di strumenti di sviluppo, Microsoft ha annunciato che l'estensione VS Code Dev Containers può utilizzare wslc come driver del contenitore. Anche l'estensione VS Code Containers e Aspire supportano questa funzionalità. Craig Loewen, product manager di Microsoft WSL, ha affermato che gli utenti devono solo selezionare wslc come programma eseguibile nelle impostazioni. Tuttavia, alcuni sviluppatori hanno riferito che anche se l'estensione viene sostituita con la versione ufficiale, Dev Containers avviserà comunque che non è possibile trovare il comando docker, indicando che l'attuale integrazione dell'editor potrebbe ancora dover essere controllata e modificata.

Il supporto Compose, che gli sviluppatori attendono con ansia, è ancora in fase di sviluppo. Compose può scrivere più contenitori come front-end, API back-end, database e cache nello stesso file di configurazione compose.yaml e quindi avviare l'intero set di servizi con un comando. Microsoft ha affermato che Compose è la funzionalità più richiesta di wslc al momento e spera che in futuro "wsl compose up" possa eseguire direttamente i file di configurazione esistenti senza modifiche. Durante i test precedenti, a causa della mancanza di Compose, gli sviluppatori potevano avviare i servizi in progetti multi-contenitore solo uno per uno.

wslc-storage.webpwslc-network.webp

Ci sono ancora lacune in alcune scene avanzate. Gli ingegneri Microsoft hanno affermato che gli sviluppatori possono provare a utilizzare il progetto della community wslc-remote che mantengono per creare e inviare immagini all'interno della distribuzione WSL; Microsoft spera di supportare il supporto nativo in futuro, ma deve ancora affrontare molte situazioni speciali. Altri utenti hanno affermato che la mancanza del supporto dei parametri "--privileged" li ha costretti a tornare a Docker per eseguire cluster Kubernetes kind e k3d. Microsoft ha affermato che le funzionalità correlate verranno lanciate presto, che il codice è entrato nel ramo principale e si prevede che presto entrerà nella fase di anteprima. Pertanto, la disponibilità ufficiale non significa che wslc abbia tutte le funzioni di una piattaforma container matura.

I contenitori WSL supportano anche Windows 10 e Windows Server. Il product manager WSL di Microsoft ha affermato che finché il sistema attuale supporta WSL, i contenitori possono essere eseguiti; Windows Latest ha anche testato wslc su Windows 10 in precedenza e ha creato ed eseguito con successo il dashboard Flask. Microsoft ha confermato che Windows Server supporta l'utilizzo di questa funzionalità anche in ambienti di produzione.

WSL-Container-in-Windows-10.jpgWSL-running.jpg

Il rapporto mette a confronto questo cambiamento con l'atteggiamento passato di Microsoft nei confronti di Linux. L'ex CEO di Microsoft Steve Ballmer una volta definì Linux un "cancro". Oggi Microsoft continua a migliorare WSL, rendendolo open source e migliorando l'accesso ai file e le funzionalità di rete tra Windows e Linux. Microsoft ha affermato che Linux ora non è più solo un ambiente di sviluppo, ma può anche ospitare carichi di lavoro AI e nativi del cloud; l'articolo menzionava anche che Google sta fornendo supporto nativo per Windows 11 e WSL per i suoi nuovi strumenti di intelligenza artificiale, e Canonical ha affermato che il tasso di crescita di Ubuntu su Windows 11 ha superato quello dei computer Linux nativi. Nonostante ciò, l'autore ritiene che la maggior parte degli sviluppatori non rinuncerà a Docker Desktop immediatamente prima che Compose e alcune funzionalità avanzate siano state completate; se la configurazione di Compose non modificata potrà essere eseguita direttamente in futuro, più persone potrebbero prendere in considerazione la disinstallazione di Docker Desktop.

Tag correlati

Articoli correlati

Commenti

0/500
Captcha (click to refresh)
Nessun commento