当前位置: 首页 > news >正文

03_WSL 与 Docker 入门指南

WSL 与 Docker 入门指南

在 Windows 上使用 Linux 和容器化开发环境


一、WSL(Windows Subsystem for Linux)

是什么

WSL 是 Windows 系统内置的 Linux 兼容层,让你不用装虚拟机、不用双系统,就能在 Windows 上直接运行 Linux 命令行工具和完整 Linux 发行版(如 Ubuntu、Debian 等)。

  • WSL 1:兼容性翻译层,文件系统性能好,但不支持 Docker 等需要完整 Linux 内核的场景
  • WSL 2:真正的 Linux 内核运行在轻量虚拟机中,支持完整的系统调用和 Docker

推荐直接使用 WSL 2。

官网

  • 官方文档:https://learn.microsoft.com/zh-cn/windows/wsl/
  • GitHub 仓库:https://github.com/microsoft/WSL

安装步骤

系统要求:Windows 10 版本 2004 及以上,或 Windows 11

一键安装(推荐)

以管理员身份打开 PowerShell 或 CMD,执行:

wsl--install

这条命令会自动完成:

  1. 启用 WSL 和虚拟机平台组件
  2. 下载并安装 Ubuntu(默认发行版)
  3. 设置 WSL 2 为默认版本

安装完成后重启电脑,首次启动 Ubuntu 时会提示你设置用户名和密码。

指定发行版安装

# 查看可用发行版wsl--list--online# 安装指定发行版(如 Ubuntu)wsl--install-d Ubuntu

验证安装

# 查看已安装的发行版和版本wsl--list--verbose# 或简写wsl-l-v

输出应显示VERSION2

常用命令速查

命令说明
wsl启动默认发行版
wsl -d <发行版名>启动指定发行版
wsl --shutdown关闭所有 WSL 实例
wsl --update更新 WSL 内核
wsl --set-version <发行版名> 2转换为 WSL 2
wsl --set-default-version 2设置默认版本为 WSL 2

从 Windows 访问 Linux 文件

在 WSL 终端中,Windows 的 C 盘挂载在/mnt/c

cd/mnt/c/Users/你的用户名

从 Linux 访问 Windows 文件

在 Windows 文件资源管理器地址栏输入\\wsl$即可访问。


二、Docker

是什么

Docker 是一个容器化平台,把应用及其所有依赖(代码、运行时、库、配置)打包成一个"容器",在任何安装了 Docker 的环境中运行,结果完全一致——"在我机器上能跑"不再是问题。

  • 镜像(Image):打包好的应用模板,只读
  • 容器(Container):镜像的运行实例,可随时创建、启动、停止、删除
  • Dockerfile:定义如何构建镜像的脚本文件

官网

  • 官方文档:https://docs.docker.com/
  • 下载页面:https://www.docker.com/products/docker-desktop/
  • Docker Hub:https://hub.docker.com/

安装步骤(Windows + WSL 2 后端)

系统要求:Windows 10 2004+ 或 Windows 11,WSL 2 已安装

1. 下载 Docker Desktop

访问 Docker Desktop 下载页面,选择 Windows 版本下载安装包,双击安装。

安装完成之后,Docker拉取资源会很慢,需要换源:

Docker千问换源:

Docker搜索引擎换源:

Docker自带AI换源:

2. 配置 WSL 2 后端

安装完成后启动 Docker Desktop:

  • 进入 Settings → General → 勾选 “Use WSL 2 based engine”(默认已勾选)
  • 进入 Settings → Resources → WSL Integration → 勾选你使用的 Linux 发行版(如 Ubuntu)

3. 验证安装

打开 PowerShell 或 WSL 终端:

docker--versiondockercompose versiondockerrun hello-world

最后一条命令如果输出 “Hello from Docker!” 说明一切正常。

注意:Docker Desktop 对商业用户(公司规模超过 250 人或年收入超过 1000 万美元)需要付费许可证,个人使用和小型团队免费。

免费替代方案

  • Docker Engine(直接在 WSL 2 内安装)——完全免费
  • Podman——开源无许可证限制

Docker desktop 详解

快速上手 [后面部署会细讲]

# 拉取一个 Nginx 镜像dockerpull nginx# 运行容器,端口映射 8080->80dockerrun-d-p8080:80 nginx# 查看运行中的容器dockerps# 停止容器dockerstop<容器ID># 删除容器dockerrm<容器ID>

Dockerfile 示例 [后面部署会细讲]

创建一个名为Dockerfile的文件:

# 基于 Python 3.12 镜像 FROM python:3.12-slim # 设置工作目录 WORKDIR /app # 复制代码 COPY . . # 安装依赖 RUN pip install --no-cache-dir -r requirements.txt # 启动应用 CMD ["python", "app.py"]

构建并运行:

# 构建镜像dockerbuild-tmy-app.# 运行dockerrun-p5000:5000 my-app

三、WSL + Docker 常用工作流

场景操作
在 WSL 中开发,Docker 运行VSCode 连接 WSL 写代码,在 WSL 终端执行docker run
数据持久化docker volume或将 Windows 目录挂载到容器中
数据库开发docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123 mysql
前端开发docker run -p 3000:3000 node:18-alpine跑 Node 服务

总结

WSLDocker
作用在 Windows 上跑 Linux把应用打包成可移植的容器
关系Docker Desktop 依赖 WSL 2 作为后端引擎在 WSL 2 上运行最流畅
开发者价值不用装虚拟机就有完整的 Linux 环境开发和生产环境一致,部署不踩坑

推荐安装顺序:先装 WSL 2 → 再装 Docker Desktop → 开启容器化开发


http://www.jsqmd.com/news/1019725/

相关文章:

  • 终极Klipper智能参数调校指南:如何让3D打印机自学成才提升打印精度
  • MPU6050自检总报错‘Error’?别急着换模块,先试试这几步排查和‘软修复’
  • 深入解析NXP WCT1011B双ADC:同步采样、硬件同步与嵌入式系统精度保障
  • 边缘设备功耗优化:从睡眠模式到动态电压频率调制的低功耗设计
  • MSC711x DSP架构解析:SC1400核心、DMA与Crossbar协同设计实战
  • 推理即新训练:AI工程重心向推理侧迁移的底层逻辑
  • 11904华夏之光永存:黄大年茶思屋榜文119期 第4题文生图肢体逻辑合理性优化方案
  • 2026实力之选:江苏密集型母线槽品牌工厂与数据中心新能源专用母线槽供应商深耕解析 - 企业推荐官【官方】
  • MQX Lite RTOS系统与任务管理函数深度解析
  • 避坑指南:锐捷AC+三层交换机旁挂组网,DHCP中继和Option 138配置最容易出错的几个地方
  • 避开这些坑:用Cartool做EEG微状态分析时,数据导出、滤波和坏段处理的正确姿势
  • 告别环境冲突:用Docker容器在5分钟内快速拉起一个可用的DeepStream 6.4测试环境
  • 3%AFFF/AR抗溶性水成膜泡沫灭火剂怎么选?浙江金瑞恒从单机到整线无缝衔接 - 品牌速递
  • 别再花冤枉钱!实测鼎阳SDS2000X+示波器带宽升级到350M的免费方法(附Python脚本)
  • 多维聚合实战:从SQL GROUP BY到OLAP立方体的数据操作心法
  • 保姆级教程:用Mac+Charles抓包OPPO手机App,从蓝牙传证书到安装成功
  • 珠海GEO优化公司哪家好?2026年最新榜单揭秘:选GEO服务商,别只看“曝光”要看“增长” - GEO优化
  • PyVISA连接不上仪器?从VISA资源字符串到驱动安装的保姆级排错指南
  • 寿险数据科学五大落地场景与工程化实践
  • UV Squares:3分钟掌握Blender智能UV网格转换插件,告别手动调整烦恼!
  • 如何让老款Mac焕发新生:OpenCore Legacy Patcher完整升级指南
  • 世界模型对抗攻击:物理约束下的自动驾驶安全挑战
  • 终极VC++运行库一体化部署方案:告别Windows系统依赖烦恼
  • OpenWrt网络访问控制终极指南:如何轻松管理家庭设备上网时间
  • 百考通AI智能数据分析,精准分层适配,赋能决策全链路
  • 2026年6月临沂兰山区黄金回收市场深度调查:信任背书、避坑指南与三家诚信商家实测 - 钦扬网络
  • STM32F103C8T6的RTC晶振死活不起振?别急着换晶振,先检查PC15这个坑!
  • 别再写‘熟悉xx技术’了!一份让HR和面试官都眼前一亮的Golang工程师简历避坑指南
  • 2026 三亚业主防水避坑指南:苏易修缮本地化精工防水,工艺 / 报价 / 竞品全方位对比 - 苏易修缮
  • 深度解析硬件伪装技术:EASY-HWID-SPOOFER内核级修改实战指南