Come preparare un ambiente di sviluppo PHP completo su Windows 10 (WSL2 + Docker + Devilbox + XDebug) - Step 2

Come sviluppiamo i progetti digitali in Masiorama? Oggi condividiamo con voi il secondo step del nostro tutorial multi-articolo che vi spiega come replicare il nostro stesso ambiente di sviluppo: Ubuntu su WSL2 in Windows 10.
di
Marco Masi

Configurare sul proprio PC un ambiente di sviluppo completo e flessibile

Eccoci giunti allo step 2 del nostro tutorial: come e perché installare WSL2 su Windows 10.

Come già anticipato dal precedente articolo contenente lo step 1 del nostro tutorial (vi invito a leggerlo se ve lo siete perso), oggi procediamo all'installazione di WSL2 su Windows 10.

Installare WSL2 su WINDOWS

Linux su Windows, ... perché?

Wsl2 win10
WSL2 su Windows 10.

Chi lavora nell'IT sa che questi due ecosistemi, nei decenni, hanno percorso per larga parte la loro strada su binari paralleli e questa separazione piuttosto netta ha portato addirittura in certi casi a generare un odio viscerale e immotivato reciproco, sfociato spesso nel fenomeno del fanboyismo (evito di menzionare Apple come terzo incomodo per non complicare il discorso).

Per anni sviluppare in PHP è stato più agevole in ambito Linux, grazie a un sistema operativo già predisposto ad accogliere l'ambiente di sviluppo (e di produzione, per i server online) e, di contraltare, più complesso e problematico in ambiente Windows. Abbastanza di recente (Giugno 2019) però qualcosa è cambiato, i due mondi hanno deciso di smettere di pestarsi i piedi a vicenda e da questa collaborazione è nato WSL2, che altro non è che un sottosistema Linux (comprensivo di Kernel Linux, contrariamente alla prima versione di WSL) integrabile (meglio dire virtualizzabile) dentro Windows.

La possibilità di installare WSL2 su Windows è stata per me una svolta: ha reso il mio lavoro quotidiano (e quello di molti miei colleghi) estremamente più semplice, flessibile e produttivo rispetto al passato (nei prossimi step spiegherò meglio il perché).

È giunto il momento di installare il sottosistema di Windows per Linux, e lo faremo totalmente da riga di comando utilizzando Terminal (e PowerShell), installato nello step precedente.

Si tratta di un'operazione piuttosto semplice ed è anche possibile scegliere quale distribuzione di Linux installare. Io personalmente, tra le varie opzioni, ho scelto di utilizzare quella più usata e più famosa: Ubuntu.

Prima di cominciare condivido la documentazione ufficiale su come installare WSL2 su Windows, così da dare modo ai più curiosi di leggere maggiori dettagli.

Prerequisiti

Per poter installare WSL2 è necessario eseguire Windows 10 versione 2004 e successive (build 19041 e successive) o Windows 11.

Qualora fosse il caso quindi basta aggiornare il proprio sistema operativo per procedere.

In aggiunta, su Windows deve essere installato il componente facoltativo denominato Sottosistema Windows per Linux, altrimenti l'installazione di WSL2 terminerebbe ancora prima di cominciare con un laconico "Termine 'wsl' non riconosciuto come nome di cmdlet, funzione, programma eseguibile o file script".

Per installare il Sottosistema Windows per Linux serve avviare PowerShell in modalità amministratore (tasto destro sull'icona PowerShell e "Esegui come amministratore") e successivamente eseguire il comando:

shell
C:\WINDOWS\System32> dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Installare il Sottosistema Windows per Linux

L'operazione può richiedere da pochi secondi a diversi minuti, quindi conviene armarsi di pazienza e attendere che la shell restituisca un messaggio positivo di completamento dell'operazione.

Installare Ubuntu

A seguire possiamo, sempre dentro la shell di PowerShell con privilegi d'amministratore, installare Ubuntu per WSL2 con il seguente comando:

shell
C:\WINDOWS\System32> wsl --install -d Ubuntu
Installare Ubuntu su WSL su Windows

Anche qui serve avere pazienza perché l'operazione necessita di una manciata di minuti per essere completata.

Install wsl
Installare finalmente WSL2.

Nota:

  • Per installare Ubuntu non è necessario specificare la distribuzione con il parametro -d poiché Ubuntu è la distribuzione predefinita, ma riporto il dettaglio per completezza e per chi si vuole avventurare nell'installare una distribuzione Linux diversa.

Quando indicato a riga di comando, è necessario riavviare il sistema operativo.

Install wsl restart system
Riavviare il sistema operativo ad installazione completata.

Nota:

  • Per riavviare WSL senza dover riavviare completamente Windows (per certe operazioni di refresh diverse dall'installazione appena eseguita può essere comodo), basta accedere ai servizi di Windows (CTRL+ALT+CANC, cliccare su Gestione Attività, e poi Servizi) e riavviare il servizio chiamato LxssManager.

Al riavvio, dovrebbe iniziare l'installazione di Ubuntu.

Ubuntu install
Al riavvio di Windows inizia l'installazione di Ubuntu.

Una volta completata l'installazione servirà configurare l'account UNIX predefinito scegliendo username e password seguendo le istruzioni a riga di comando.

Ubuntu install user
Definire l'account UNIX di Ubuntu.

È molto importante memorizzare username e password perché verranno usate praticamente sempre, da adesso in poi, per svariate operazioni che richiedono privilegi elevati.

Ancora qualche istante e ... ci siamo, Ubuntu è installato, e siamo già al suo interno, come potete vedere nell'immagine sottostante:

Ubuntu install completed
Ubuntu è adesso disponibile all'interno di WSL.

A seguire, il mio suggerimento è di uscire da WSL tramite il seguente comando (che chiuderà la shell) ...

wsl
masiorama@DESKTOP-ND47T9C:~$ exit
Uscire da WSL

... e successivamente accedere nuovamente ad Ubuntu da dentro Terminal, aprendo una tab e selezionando Ubuntu come terminale (ricordate lo step del tutorial precedente?).

Qualora fosse necessario riavviare WSL con PowerShell prima di accedere nuovamente è possibile eseguire le operazioni di spegnimento forzato e riavvio di WSL con i seguenti comandi:

shell
C:\WINDOWS\System32> wsl --shutdown C:\WINDOWS\System32> wsl
Spegnere il subsystem e successivamente riavviarlo

Fatto! Ubuntu è installato e operativo dentro WSL!

Verificare e convertire la versione di WSL, se necessario

Se per qualche motivo la versione di WSL presente sul sistema operativo risultasse essere la versione 1 invece della versione 2 (per una precedente installazione o per qualunque altro motivo), serve convertire alla versione più recente.

Prima di tutto verifichiamo via Powershell (attenzione, non tramite la shell di WSL) la versione effettiva di WSL tramite il comando:

shell
C:\WINDOWS\System32> wsl -l -v
Verificare la versione di WSL

Qualora il risultato del comando mostrasse che la versione installata è la 1 allora per convertirla basta eseguire il seguente comando:

shell
C:\WINDOWS\System32> wsl --set-version Ubuntu -2
Convertire WSL alla versione 2

Dopo aver atteso pazientemente (la conversione necessita di alcuni minuti), si viene direttamente accreditati all'interno di WSL.

La prima operazione su WSL2 Ubuntu

È fatta, siamo dentro Ubuntu, virtualizzato su Windows!

La prima cosa che consiglio sempre di fare è aggiornare la distribuzione di Linux e tutti i suoi package tramite il comando:

wsl
masiorama@DESKTOP-ND47T9C:~$ sudo apt update && sudo apt upgrade
Aggiornare la distribuzione Linux

Una volta fatto abbiamo concluso il secondo step: abbiamo installato correttamente Ubuntu Linux dentro il subsystem di Windows.

Tra una settimana pubblicheremo la prossima parte della guida, rimanete sintonizzati e per qualunque dubbio o informazione scrivete nella sezione commenti sottostante.

Anche oggi è tutto!

Commenti

Scrivi un commento e condividi il tuo pensiero con noi!