WSL2 完整开发环境配置指南

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 年不会过时

二、整体执行顺序

配置过程分为六个步骤,建议按顺序执行,不要跳过

  1. Windows 启用 WSL2
  2. 安装 Ubuntu 22.04
  3. 初始化 Linux 基础环境
  4. 安装 Java / Node / pnpm
  5. 安装 Docker(WSL 原生)
  6. 开发体验增强(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 IDEAWebStorm

  1. 安装 WSL 插件
  2. 打开项目路径:\\wsl$\Ubuntu-22.04\home\<用户名>\projects

⚠️ 重要提示: 不要打开 /mnt/c 路径下的文件,这会导致严重的性能问题。


十、配置完成后的能力

完成以上配置后,你的开发环境将具备以下特性:

  • ✅ 本地开发环境与 Linux 服务器高度一致
  • ✅ Docker 和 CI/CD 构建行为完全一致
  • ✅ Java 和 Vue 项目不再出现系统差异问题
  • ✅ 这套环境配置 3-5 年不会过时

十一、后续优化方向

环境配置完成后,你可以继续优化以下方面:

  1. 构建 Spring Boot + Vue + Docker Compose 项目模板
  2. 配置 IDEA / WebStorm 与 WSL 的最佳实践
  3. 将现有项目 Docker 化并优化 CI/CD 流程

总结

希望这篇指南能帮助你快速搭建起一套专业的全栈开发环境。如果在配置过程中遇到任何问题,欢迎留言交流!

关键词: WSL2、Ubuntu、Java、Vue3、Docker、全栈开发、开发环境配置

相关推荐
BullSmall3 小时前
Sonarqube9.9 docker 镜像启动后 conf 下的配置文件没有了
docker·容器·eureka
hay_lee5 小时前
Kubernetes StatefulSet:OrderedReady 极简指南
云原生·容器·kubernetes
晚风吹长发5 小时前
Docker使用——Docker容器及相关命令
linux·运维·服务器·docker·容器·架构
ShiXZ2135 小时前
Docker Compose 安装与配置指南
运维·docker·容器
BullSmall7 小时前
Anolis OS 8.10 Docker 部署 SonarQube 9.9 完整教程
运维·docker·容器
生活爱好者!1 天前
我把NAS当作下载机,docker一键部署qb
运维·docker·容器
Hui Baby1 天前
K8S使用CRD和控制器简单应用
云原生·容器·kubernetes
做个文艺程序员1 天前
Linux第22篇:用Docker容器化你的Java SaaS应用:一次构建,随处运行
java·docker·容器
Zhu7581 天前
在k8s环境部署Apache Superset最新版
容器·kubernetes·apache
小的博客1 天前
windows下安装Docker Desptop
运维·docker·容器