Windows 11 + WSL + Docker Desktop 开发环境设置

第一步:安装WSL

一、安装 WSL?

安装过程非常简单,微软已经为它做了极大的优化。你只需要用管理员身份打开 PowerShell 或 Windows 命令提示符,然后输入一行命令,重启即可:

powershell

复制代码
wsl --install

wsl --install (默认安装的是 Ubuntu,查看当前系统版本命令:cat /etc/os-releas。如果你不想用默认的 Ubuntu,可以在安装前先查看所有可用的发行版列表,然后指定安装。查看列表cmd:wsl.exe -l -o)

这个命令会自动完成所有操作:启用必要的 Windows 功能、下载并安装 Linux 内核,并默认安装 Ubuntu 发行版。重启后,启动 Ubuntu,设置一个属于你自己的 Linux 用户名和密码,就可以开始使用了。

第二步:WSL 内装基础工具

打开 WSL (Ubuntu) 终端,执行:

复制代码
sudo apt update && sudo apt install -y git curl wget unzip make

第三步:安装 Docker Desktop

  1. docker.com 下载 Docker Desktop for Windows
  2. 安装时选 WSL 2 backend
  3. 安装完成后:Settings > Resources > WSL Integration 找到你的 Ubuntu 发行版,把开关打开(让Docker引擎在Linux内核上运行,让WSL终端能直接使用docker命令。就是让Docker"住进"你的WSL 2 Linux环境里,而不是"住在"Windows上)
  4. Apply & Restart

验证(在 WSL 终端里):

复制代码
docker --version          # 应该看到 Docker 版本号
docker compose version    # 应该看到 Compose 版本号

📍 集成和不集成 的核心区别:Docker引擎的运行位置

状态 Docker引擎的位置 docker命令的通信方式
未集成 运行在Windows上(通过Hyper-V或WSL 2后端,但独立于你的Linux发行版)。 你的WSL终端需要通过网络 (如TCP/IP)或管道连接到Windows上的Docker守护进程。
已集成 直接运行在你指定的那个WSL 2 Linux发行版内部(和你的Ubuntu共享同一个轻量级虚拟机内核)。 你的WSL终端里的docker命令,直接和同一个环境里的Docker守护进程通信(相当于本地调用)。

🏠 比喻:房子和租客

  • WSL 2 的"虚拟机平台" :可以理解为一栋公寓大楼(WSL 2 的轻量级虚拟机)。它提供了基础设施(Linux 内核)。

  • 你的 Linux 发行版(如 Ubuntu) :是这栋大楼里的一套独立房间(一个用户空间),你平时住在里面,有自己的家具和习惯。

  • 未集成时的 Docker 引擎 :是这栋大楼里的另一个独立房间,由 Docker Desktop 管理,里面也运行着 Linux 系统。

WSL终端常用命令:

uname -r #查看的是"Linux 内核"版本

cat /etc/os-release #查看"操作系统发行版"信息

cd / # 进入linux根目录

cd /mnt/ # 进入windows根目录

cd cd /mnt/c # 进入windows系统c盘

ls # 列出文件

相关推荐
Android系统攻城狮8 分钟前
Linux Gstreamer深度解析之gst_audio_channel_reorder_map调用流程与实战(十八)
linux·运维·服务器·音视频进阶·gstreamer音视频进阶
新时代牛马28 分钟前
docker run 起不来?从dockerd、containerd 到runc 一条线讲透
运维·docker·容器
JavaPub-rodert29 分钟前
Docker 安装 MySQL 完整教程:从零部署数据库,到生产环境持久化配置
数据库·mysql·docker
TomEval37 分钟前
【App 自动化】14 - App 自动化基础与环境
运维·自动化
新时代牛马1 小时前
Linux 防火墙:nftables 与iptables 兼容层
linux·运维·服务器
xhbh6661 小时前
中小企业 Redis 运维,如何安全归档 RDB、AOF 备份文件?
运维·数据库·缓存·数据备份·文件备份·同步备份·号码备份
是逍遥子没错1 小时前
一个斜杠,击穿整座网关:API网关路径前缀绕过认证实战
运维·服务器·web安全·网络安全·渗透测试·系统安全
其实防守也摸鱼2 小时前
每天一个知识点——RCE漏洞
运维·服务器·数据库·windows·安全·github·漏洞
努力努力再努力wz2 小时前
【Docker 入门系列】:从 Namespace、CGroup 到 LXC:理解容器运行时、rootfs 与 LXC 实战
运维·docker·容器
JavaPub-rodert3 小时前
Docker 多阶段构建:为什么生产环境镜像可以小 90%
运维·docker·容器