Windows 11 + WSL2 + Ubuntu 22.04 全栈开发环境
作为一名全栈开发工程师,我在 Windows 系统上配置 Java + Vue3 开发环境时遇到了诸多挑战。经过实践,我发现通过 WSL2(Windows Subsystem for Linux 2)可以构建一个接近原生 Linux 的开发环境,极大提升开发效率。本文将分享一套可复制、可复用、工程级的初始化方案。
一、为什么选择 WSL2?
- ✅ 与服务器环境高度一致,避免"本地能跑,服务器翻车"的问题
- ✅ Docker 和 CI/CD 构建行为完全一致
- ✅ 系统级工具链(Java、Node、Docker)原生支持
- ✅ 这套环境配置 3-5 年不会过时
二、整体执行顺序
配置过程分为六个步骤,建议按顺序执行,不要跳过:
- Windows 启用 WSL2
- 安装 Ubuntu 22.04
- 初始化 Linux 基础环境
- 安装 Java / Node / pnpm
- 安装 Docker(WSL 原生)
- 开发体验增强(zsh / git / 性能)
三、Windows 侧一次性配置
3.1 启用 WSL2
以管理员身份打开 PowerShell,执行以下命令:
powershell
wsl --install
wsl --set-default-version 2
wsl --update
安装完成后,在 Microsoft Store 搜索并安装:
text
Ubuntu 22.04 LTS
3.2 配置 WSL2 资源限制(强烈建议)
在 Windows 用户目录下创建配置文件:C:\Users\<你的用户名>\.wslconfig
ini
[wsl2]
memory=16GB
processors=8
swap=8GB
localhostForwarding=true
配置完成后,重启 WSL:
powershell
wsl --shutdown
四、Ubuntu 系统初始化
登录 Ubuntu 后,直接复制以下脚本整段执行:
bash
# =========================
# WSL2 Base Init Script
# Ubuntu 22.04
# =========================
set -e
echo "▶ 更新系统"
sudo apt update && sudo apt upgrade -y
echo "▶ 安装基础工具"
sudo apt install -y curl wget git unzip zip ca-certificates build-essential software-properties-common lsb-release gnupg2 net-tools htop tree jq
echo "▶ 设置时区"
sudo timedatectl set-timezone Asia/Shanghai
echo "▶ Git 基础配置"
git config --global core.autocrlf input
git config --global core.filemode false
git config --global pull.rebase false
echo "▶ 创建项目目录"
mkdir -p ~/projects
echo "✔ 基础环境初始化完成"
五、Java 开发环境配置
5.1 安装 SDKMAN(推荐)
SDKMAN 是 Java 生态的版本管理工具,可以轻松切换不同 JDK 版本:
bash
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
5.2 安装 JDK
bash
sdk install java 17.0.10-tem
sdk install java 21.0.2-tem
sdk default java 17.0.10-tem
验证安装:
bash
java -version
六、Node.js 与 pnpm 配置
6.1 安装 nvm
bash
curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc
6.2 安装 Node LTS 和 pnpm
bash
nvm install --lts
nvm use --lts
corepack enable
corepack prepare pnpm@latest --activate
验证安装:
bash
node -v
pnpm -v
七、Docker 环境配置
7.1 卸载旧版本
bash
sudo apt remove -y docker docker-engine docker.io containerd runc
7.2 安装 Docker Engine
bash
curl -fsSL https://get.docker.com | sh
7.3 权限配置
bash
sudo usermod -aG docker $USER
newgrp docker
验证安装:
bash
docker run hello-world
docker compose version
八、开发体验增强(可选但推荐)
8.1 安装 Zsh + Oh My Zsh
Zsh 配合 Oh My Zsh 可以大幅提升终端使用体验:
bash
sudo apt install -y zsh
chsh -s $(which zsh)
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
推荐安装的插件:
zsh-autosuggestions:命令自动补全zsh-syntax-highlighting:语法高亮
九、IDE 正确配置方式
对于 IntelliJ IDEA 或 WebStorm:
- 安装 WSL 插件
- 打开项目路径:
\\wsl$\Ubuntu-22.04\home\<用户名>\projects
⚠️ 重要提示: 不要打开
/mnt/c路径下的文件,这会导致严重的性能问题。
十、配置完成后的能力
完成以上配置后,你的开发环境将具备以下特性:
- ✅ 本地开发环境与 Linux 服务器高度一致
- ✅ Docker 和 CI/CD 构建行为完全一致
- ✅ Java 和 Vue 项目不再出现系统差异问题
- ✅ 这套环境配置 3-5 年不会过时
十一、后续优化方向
环境配置完成后,你可以继续优化以下方面:
- 构建 Spring Boot + Vue + Docker Compose 项目模板
- 配置 IDEA / WebStorm 与 WSL 的最佳实践
- 将现有项目 Docker 化并优化 CI/CD 流程
总结
希望这篇指南能帮助你快速搭建起一套专业的全栈开发环境。如果在配置过程中遇到任何问题,欢迎留言交流!
关键词: WSL2、Ubuntu、Java、Vue3、Docker、全栈开发、开发环境配置