Node.js, Docker, Git, VSCode e Copilot
Questa guida continua dal setup dell'ambiente WSL. A questo punto hai Debian Trixie in esecuzione in WSL, loggato come utente node, con /workspace/projects pronto. Ora installiamo tutto il necessario per iniziare a sviluppare con TypeScript, NestJS e Angular.
Step 1 — Installa Node.js con nvm
nvm (Node Version Manager) ti permette di installare e passare tra più versioni di Node.js con un solo comando. È il modo giusto per gestire Node in un ambiente di sviluppo.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
source ~/.bashrc
Installa l'ultima versione LTS:
nvm install --lts
nvm use --lts
Verifica:
node --version
npm --version
Step 2 — Installa TypeScript e Angular CLI
npm install -g typescript
npm install -g @angular/cli
Verifica:
tsc --version
ng version
Questi vengono installati globalmente — disponibili in tutti i tuoi progetti fin dal primo momento.
Step 3 — Installa Docker Engine
Non installare Docker Desktop. Installa Docker Engine nativamente dentro WSL — questa è la differenza chiave che elimina l'overhead di virtualizzazione.
sudo apt-get update
sudo apt-get install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Aggiungi l'utente node al gruppo docker per eseguire Docker senza sudo:
sudo usermod -aG docker node
Abilita il socket Docker invece del daemon. Con la socket activation, Docker si avvia solo alla prima richiesta e non consuma memoria quando non è in uso:
sudo systemctl enable docker.socket
sudo systemctl start docker.socket
Testalo:
docker run hello-world
docker compose version
Step 4 — Installa Git
sudo apt-get install -y git
git config --global user.name "Il Tuo Nome"
git config --global user.email "Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo. "
git config --global init.defaultBranch main
Git è utile anche senza un account GitHub — per il versioning locale dei tuoi progetti.
Step 5 — Installa VSCode
Se sei su Windows (WSL):
Scarica e installa VSCode da code.visualstudio.com. Durante l'installazione, assicurati che l'opzione "Add to PATH" sia selezionata.
Poi installa l'estensione Remote - WSL. Apri VSCode, vai su Estensioni (Ctrl+Shift+X), cerca Remote - WSL e installala.
Dal terminale WSL, naviga in una cartella di progetto ed esegui:
cd /workspace/projects
mkdir test && cd test
code .
VSCode si apre connesso direttamente al filesystem Linux. Tutto — terminale, Git, debugger — gira dentro WSL.
Se sei su Linux nativo:
Step 6 — Installa le Estensioni VSCode Consigliate
sudo apt-get install -y wget gpg
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -D -o root -g root -m 644 packages.microsoft.gpg /etc/apt/keyrings/packages.microsoft.gpg
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" | \
sudo tee /etc/apt/sources.list.d/vscode.list > /dev/null
sudo apt-get update
sudo apt-get install -y code
Dal terminale WSL, installa le estensioni essenziali con un solo comando:
code --install-extension ms-azuretools.vscode-docker
code --install-extension eamodio.gitlens
code --install-extension GitHub.copilot
code --install-extension GitHub.copilot-chat
GitHub Copilot è disponibile con un piano gratuito — sufficiente per iniziare a sperimentare lo sviluppo assistito dall'AI.
Step 7 — Crea il Tuo Primo File di Istruzioni
Un file di istruzioni dice a Copilot cos'è il tuo progetto, quale stack usi e quali regole seguire. La differenza nella qualità dell'output è immediata.
Crea la struttura per il tuo primo progetto:
cd /workspace/projects
mkdir my-project && cd my-project
mkdir -p .github/instructions
code .
Dentro VSCode, crea il file .github/instructions/general.instructions.md con questo contenuto come punto di partenza:
Modificalo in base al tuo progetto. Più sei specifico, meglio Copilot capisce il contesto.
---
applyTo: "**"
---
# Progetto
## Stack
- Runtime: Node.js (LTS) con TypeScript
- Backend: NestJS
- Frontend: Angular
- Containerizzazione: Docker + Docker Compose
## Convenzioni
- Usa async/await, mai Promise grezze
- Tutte le funzioni devono avere tipi di ritorno TypeScript espliciti
- La struttura dei moduli segue lo standard NestJS (module, controller, service)
## Regole
- Non generare commenti inline a meno che la logica non sia non ovvia
- Non usare il tipo `any`
Sei ora pronto per clonare ed eseguire i progetti da GitHub, incluso il framework RAD-System documentato nel blog.