Quick setup for Windows 10/11.
cd windows
.\bootstrap.ps1This will:
- ✅ Install Docker Desktop (via WinGet)
- ✅ Install Cursor IDE (via WinGet)
- ✅ Prompt you to select a repository
- ✅ Check required ports (optionally free blocked ports)
- ✅ Build and start the dev container
- ✅ Launch your selected application
- ✅ Open Cursor to the repo's code folder
.\bootstrap.ps1 # Interactive repo selection
.\bootstrap.ps1 -Repo demo-site # Run demo-site directly
.\bootstrap.ps1 -Repo cyvl-geoguesser # Run CYVL GeoGuesser
.\bootstrap.ps1 -ForcePorts # Auto-kill processes using required ports
.\bootstrap.ps1 -NoOpen # Don't open Cursor
.\bootstrap.ps1 -ReinstallDocker # Force reinstall Docker
.\bootstrap.ps1 -ReinstallCursor # Force reinstall Cursor
.\bootstrap.ps1 -TimeoutSec 180 # Longer startup timeout (default: 120s).\dev.ps1 up # Start containers
.\dev.ps1 down # Stop containers
.\dev.ps1 shell # Open shell in container
.\dev.ps1 start [repo] # Start repo services
.\dev.ps1 stop [repo] # Stop repo services
.\dev.ps1 restart [repo] # Restart repo services
.\dev.ps1 logs [repo] # View service logs
.\dev.ps1 status # Show container and service status
.\dev.ps1 install [repo] # Install repo dependencies
.\dev.ps1 select # Select/change active repository
.\dev.ps1 list # List available repositories
.\dev.ps1 build # Rebuild container image
.\dev.ps1 clean # Remove containers and images- Windows 10 (build 19041+) or Windows 11
- PowerShell 5.1+ (PowerShell 7 recommended)
- WSL2 enabled (Docker Desktop requirement)
- WinGet (recommended, for automated installs)
Docker Desktop requires WSL2. If not already enabled:
# Run as Administrator
wsl --install
# Restart your computerDocker Desktop requires manual first-run setup:
- Open Docker Desktop from Start Menu
- Accept the license agreement
- Complete WSL2 setup if prompted
- Re-run
.\bootstrap.ps1
Install WinGet (App Installer) from the Microsoft Store, or the bootstrap will attempt a direct download fallback.
Use the -ForcePorts flag to auto-kill blocking processes:
.\bootstrap.ps1 -ForcePortsOr check what's using the port:
netstat -ano | findstr :8080
# Note the PID, then:
taskkill /PID <pid> /FIf you see "running scripts is disabled", run:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser# Check WSL status
wsl --status
# Update WSL
wsl --update
# Set default version to 2
wsl --set-default-version 2- Ensure WSL2 is properly installed
- Check Docker Desktop settings → Resources → WSL Integration
- Try restarting Docker Desktop
- Check Windows Event Viewer for errors