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 IDEA 或 WebStorm:

  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、全栈开发、开发环境配置

相关推荐
工业一体机老司机6 小时前
Docker部署工控机采集服务 Compose编排与开机自启
运维·docker·容器
miaobinfei11 小时前
docker拉取dify镜像,执行docker compose up -d 报错
运维·docker·容器
kobe_OKOK_12 小时前
docker compose命名卷 映射到宿主机的路径
运维·docker·容器
晨陌y17 小时前
Flare自托管导航页教程:Docker部署、多用户、API与公网访问
运维·docker·容器
螺蛳粉 螺蛳粉1 天前
第 05 篇:etcd 深入:Raft 共识、watch 机制与快照备份恢复实战(底座认知 05)
docker·云原生·容器·kubernetes·etcd·分布式存储·kube-apiserver
PellyKoo1 天前
【docker】cifs卷改smb密码后容器起不来的解决方法
运维·docker·容器
阿标在干嘛1 天前
容器编排的“场景适配”:我们为什么在部分服务中回归了Docker Compose?
运维·docker·容器
IT19952 天前
Docker 快速部署 DM8 达梦数据库|完整踩坑笔记
笔记·docker·容器
Star(up up up)2 天前
Docker系列---Docker容器基本命令(新手小白保姆级实操教程)
运维·学习·程序人生·青少年编程·docker·容器·dubbo
方便面不加香菜2 天前
Docker Image-- 镜像命令详解与使用示例
运维·docker·容器