WSL2 Development Environment - Quick Start
First-Time Setup (5 minutes)
1. From Windows PowerShell (Run as Administrator)
# Install WSL2 if not already installed
wsl -- install
# Reboot if prompted, then install Ubuntu 24.04
wsl -- install Ubuntu- 24.04
2. From Inside WSL2 Ubuntu
# Clone this repo
git clone < your-repo-url> ~ /wsl2-migration
cd ~ /wsl2-migration
# Run the bootstrap
./bootstrap.sh
From Windows PowerShell:
cd ~ /wsl2-migration
./verify.sh
Tool
Purpose
Docker Engine
Container runtime (not Docker Desktop)
.NET 10 SDK
.NET development
Node.js (LTS)
JavaScript/TypeScript development
Claude Code CLI
AI coding assistant
GitHub CLI
GitHub operations
zsh + oh-my-zsh
Enhanced shell
# Docker
docker ps # List containers
docker compose up -d # Start services
# .NET
dotnet new webapi # Create new project
dotnet test # Run tests
# Node.js
nvm use lts # Switch to Node.js LTS
npm install # Install dependencies
# Git
gs # git status
gp # git push
code . # Open in VS Code with Remote-WSL
Open Rider on Windows
File → Settings → Gateway
Add WSL backend
Open project from \\wsl$\Ubuntu-24.04\home\...
cd ~ /wsl2-migration/devcontainer-test
code .
# Then: "Reopen in Container"
cd ~ /wsl2-migration
./modules/migrate.sh # Copy git, SSH, npm configs from Windows
Issue
Solution
Docker permission denied
newgrp docker or restart WSL
dotnet not found
source ~/.profile.d/dotnet.sh
node not found
source ~/.nvm/nvm.sh
No internet
Check /etc/resolv.conf or restart WSL
Full docs: See docs/ directory
Troubleshooting: docs/troubleshooting.md
Rider setup: docs/rider-gateway-setup.md