Windows 下 Docker Desktop 安装教程及常用命令(2026 最新)

Windows 安装 Docker 核心是 Docker Desktop + WSL2(推荐),家庭版 / 专业版通用,性能好、最稳定,下面是详细步骤。

一、系统与硬件要求

1. 1、系统版本

  • Windows 10 64 位:家庭 / 专业 / 企业 22H2(Build 19045+)
  • Windows 11 64 位:全版本(家庭 / 专业 / 企业)

如果系统版本不够安装会报错:

这时候需要升级系统版本安装 Docker Desktop 4.23.0 或更早版本 ,并使用 Hyper-V 后端 (避开新版 WSL 2 内核不兼容问题)。直接看 十、针对Windows 10 专业版低系统版本的docker

1.2、 硬件要求

  • CPU:64 位、支持 Intel VT-x / AMD-V 虚拟化(必须在 BIOS 开启)
  • 内存:≥4GB(推荐 8GB+)
  • 硬盘:SSD 优先,C 盘至少20GB + 空闲

1.3、 检查虚拟化是否开启

  • 任务管理器 → 性能 → CPU:查看 虚拟化:已启用
  • 若显示 "已禁用":重启电脑按 Del/F2/F10 进 BIOS,开启 Intel Virtual Technology (VT-x)AMD-V,保存重启。

二、启用 WSL2

WSL2 = Windows Linux 子系统,Docker 推荐后端,家庭版必装、专业版推荐。

方法 1:PowerShell 自动安装

  • 管理员身份打开 PowerShell
  • 执行命令:
bash 复制代码
wsl --install
  • 自动安装:WSL 内核 + Ubuntu(默认)
  • 安装完成 重启电脑

如果这一步失败,返回信息,就像下面这样,就使用方法 2:

方法 2:手动启用

控制面板 → 程序 → 启用或关闭 Windows 功能

勾选:

  • 适用于 Linux 的 Windows 子系统
  • 虚拟机平台

确定 → 重启电脑


三、下载 Docker Desktop


四、安装 Docker Desktop

  1. 双击 Docker Desktop Installer.exe → 用户账户控制点

  2. 配置页面(关键勾选):

    • Use WSL 2 instead of Hyper-V(选,性能好)

    • Add shortcut to desktop (添加桌面图标)

    • 点击 OK → 等待安装(5--10 分钟)

    • 安装完成 → 勾选 Close and restart立即重启电脑


五、首次启动与初始化

  1. 重启后,桌面双击 Docker Desktop 图标
  2. 服务协议 → 点 Accept
  3. 登录 / 跳过:
    • 有 Docker 账号:登录
    • 无账号:点 Skip 跳过(不影响使用)
  4. 等待启动:
    • 任务栏出现鲸鱼图标
    • 提示 Docker Desktop is running 即成功

六、验证安装

打开 PowerShell 或 CMD,依次执行:

1. 查看版本

powershell

复制代码
docker --version
# 输出:Docker version 26.x.x, build xxx

2. 测试容器

powershell

复制代码
docker run hello-world

出现 Hello from Docker! 即安装完全成功。


七、必做优化(解决 C 盘爆满 / 下载慢)

1. 更换镜像存储位置(防 C 盘红)

  1. Docker → 右上角 Settings(齿轮)
  2. Resources → Advanced
  3. Disk image location → 点 Browse 选 D/E/F 盘文件夹(如 E:\Docker\wsl
  4. Apply & Restart → 等待迁移完成

2. 配置国内镜像加速(解决拉取超时)

  • Settings → Docker Engine
  • 在 JSON 中添加 registry-mirrors
bash 复制代码
{
  "registry-mirrors": [
    "https://docker.1panelproxy.com",
    "https://docker.m.daocloud.io",
    "https://docker.registry.cyou",
    "https://docker.jsdelivr.fyi",
    "https://docker.m.daocloud.io",
    "https://docker.nju.edu.cn",
    "https://docker.mirrors.sjtug.sjtu.edu.cn",
    "https://docker.mirrors.ustc.edu.cn",
    "https://docker.rainbond.cc",
    "https://dockerhub.icu",
    "https://docker-cf.registry.cyou",
    "https://dockercf.jsdelivr.fyi",
    "https://dockertest.jsdelivr.fyi",
    "https://dockerproxy.com",
    "https://mirror.baidubce.com",
    "https://mirror.iscas.ac.cn",
    "https://mirror.aliyuncs.com",
    "https://hub-mirror.c.163.com",
    "https://your_preferred_mirror",
    "https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com"
  ],
  "features": {
    "buildkit": true
  }
}
  • Apply & Restart 生效

八、常见问题

1. WSL2 安装失败

  • 执行:
bash 复制代码
wsl --update
wsl --set-default-version 2
  • 重启电脑再启动 Docker

2. 启动报错 "虚拟化未开启"

  • 进 BIOS 开启 VT-x / AMD-V
  • Windows 功能:开启 虚拟机平台

3. 家庭版用户

  • 必须用 WSL2,不能用 Hyper-V
  • 按上面步骤安装 WSL2 即可

九、常用命令

bash 复制代码
# 查看版本
docker --version
docker-compose --version

# 查看运行容器
docker ps

# 测试hello-world
docker run hello-world

# 启动/停止Docker
# 桌面点图标启停

十、针对Windows 10 专业版低系统版本的docker

推荐Docker Desktop 4.23.0(稳定、兼容 21H1,支持 Hyper-V)

10.1.、开启 Hyper-V(专业版专属)

  • 控制面板 → 程序 → 启用或关闭 Windows 功能

  • 勾选:

    • Hyper-V(全部子项)
    • 虚拟机平台
    • 适用于 Linux 的 Windows 子系统(可选备用)
  • 确定 → 重启电脑

10.2.、确认 BIOS 开启虚拟化

  • 任务管理器 → 性能 → CPU:虚拟化:已启用

10.3、下载适配版 Docker Desktop

官方历史版下载(4.23.0):

https://docs.docker.com/desktop/release-notes/#4230(下拉找到 Docker Desktop 4.23.0Download for Windows

网盘下载:

Windows的Docker Desktop4.X系列

链接:

https://pan.baidu.com/s/1450isx-01lTJrBUjpueubg

提取码:

k7rj

10.4、安装步骤(关键设置)

  1. 管理员身份 运行 Docker Desktop Installer.exe
  2. Configuration 页面(必选)
    • 取消勾选Use WSL 2 instead of Hyper-V(❌ 不选 WSL2)
    • 勾选Add shortcut to desktop

  1. 点击 OK → 等待安装
  2. 安装完成 → 重启电脑

10.5、首次启动与验证

  1. 启动 Docker Desktop(桌面图标)

  2. 接受协议 → 跳过登录

  3. 等待启动(任务栏鲸鱼图标)

  4. 验证(PowerShell)

    bash 复制代码
    docker --version
    # 输出 Docker version 24.0.4 (对应 4.23.0)
    
    docker run hello-world
    # 出现 Hello from Docker! 即成功

10.6、常见问题(21H1 专属)

1. 启动报错 Windows version is incompatible

  • 原因:装了新版 Docker (≥4.24.0)
  • 解决 :卸载 → 安装 4.23.0 版

2. WSL 2 错误(wsl not found

  • 解决
    1. Docker → Settings → General
    2. 勾选 Use Hyper-V (recommended)
    3. Apply & Restart

3. 镜像拉取慢

  • 添加国内镜像(Settings → Docker Engine):
bash 复制代码
{
  "registry-mirrors": [
    "https://docker.1panelproxy.com",
    "https://docker.m.daocloud.io",
    "https://docker.registry.cyou",
    "https://docker.jsdelivr.fyi",
    "https://docker.m.daocloud.io",
    "https://docker.nju.edu.cn",
    "https://docker.mirrors.sjtug.sjtu.edu.cn",
    "https://docker.mirrors.ustc.edu.cn",
    "https://docker.rainbond.cc",
    "https://dockerhub.icu",
    "https://docker-cf.registry.cyou",
    "https://dockercf.jsdelivr.fyi",
    "https://dockertest.jsdelivr.fyi",
    "https://dockerproxy.com",
    "https://mirror.baidubce.com",
    "https://mirror.iscas.ac.cn",
    "https://mirror.aliyuncs.com",
    "https://hub-mirror.c.163.com",
    "https://your_preferred_mirror",
    "https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com"
  ]
}

10.7、总结(21H1 必看)

  • 最佳版本Docker Desktop 4.23.0
  • 必选后端Hyper-V(不要用 WSL2)
  • 核心步骤:开启 Hyper-V → 装 4.23.0 → 选 Hyper-V 引擎

十一、Docker命令使用说明

11.1、Docker 基础信息命令

复制代码
# 查看 Docker 版本
docker --version

# 查看 Docker 详细信息(版本、镜像数、容器数)
docker info

# 查看命令帮助(比如查看 run 命令用法)
docker run --help

11.2、Docker 镜像(Image)命令

镜像 = 软件安装包(包含程序 + 环境)

1. 搜索镜像

复制代码
# 从 Docker Hub 搜索镜像
docker search 镜像名

# 示例:搜索 Nginx 镜像
docker search nginx

2. 下载(拉取)镜像

复制代码
# 格式:docker pull 镜像名[:标签],默认 latest 最新版
docker pull 镜像名

# 示例 1:下载最新版 Nginx
docker pull nginx

# 示例 2:下载指定版本 MySQL 8.0
docker pull mysql:8.0

3. 查看本地所有镜像

复制代码
docker images
# 或简写
docker image ls

4. 删除本地镜像

复制代码
# 格式:docker rmi 镜像ID / 镜像名
docker rmi 镜像名/镜像ID

# 示例 1:按名称删除 Nginx
docker rmi nginx

# 示例 2:按 ID 删除镜像(ID 只需输入前 3 位即可)
docker rmi a1b

5. 查看镜像详情

复制代码
docker inspect 镜像名/ID

6. 给镜像打标签

复制代码
docker tag 原镜像名:标签 新镜像名:标签

7. 推送到镜像仓库(Docker Hub / 私有仓库)

复制代码
docker push 用户名/镜像名:标签

8. 登录 / 登出仓库

复制代码
docker login
docker logout

9. 导出镜像(保存成本地文件)

复制代码
docker save -o 文件名.tar 镜像名:标签

10. 导入本地镜像文件

复制代码
docker load -i 文件名.tar

11. 查看镜像构建历史

复制代码
docker history 镜像名/ID

11.3、Docker 容器(Container)命令

容器 = 镜像运行后的实例(相当于运行中的软件)

1. 创建并启动容器(最核心命令:docker run)

复制代码
# 基础格式
docker run [参数] 镜像名

# 常用参数:
# -d :后台运行
# -p 宿主机端口:容器端口 :端口映射
# --name :给容器起名字
# -v 宿主机目录:容器目录 :数据挂载(数据持久化)
# -e :设置环境变量(如密码)
# --restart=always :开机自启
常用 run 示例
复制代码
# 示例 1:启动 Nginx(后台运行 + 端口映射)
docker run -d -p 80:80 --name mynginx nginx

# 示例 2:启动 MySQL 8.0(设置密码 + 数据持久化 + 自启)
docker run -d \
  -p 3306:3306 \
  --name mysql8 \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -v /mydata/mysql:/var/lib/mysql \
  --restart=always \
  mysql:8.0

# 示例 3:启动 Redis(带密码)
docker run -d -p 6379:6379 --name myredis redis redis-server --requirepass 123456

2. 查看容器

复制代码
# 查看正在运行的容器
docker ps

# 查看所有容器(包括停止的)
docker ps -a

# 查看容器资源占用(CPU、内存)
docker stats

3. 进入运行中的容器

复制代码
# 标准进入方式(推荐)
docker exec -it 容器名/容器ID /bin/bash

# 示例:进入 Nginx 容器
docker exec -it mynginx /bin/bash

# 退出容器(不停止容器)
exit

4. 启动 / 停止 / 重启容器

复制代码
# 停止容器
docker stop 容器名/ID

# 启动已停止的容器
docker start 容器名/ID

# 重启容器
docker restart 容器名/ID

# 示例:停止 mynginx
docker stop mynginx

5. 删除容器

复制代码
# 删除已停止的容器
docker rm 容器名/ID

# 强制删除运行中的容器(不推荐)
docker rm -f 容器名/ID

# 示例:删除 mynginx
docker rm mynginx

6. 查看容器日志

复制代码
# 查看日志
docker logs 容器名/ID

# 实时查看日志(持续刷新)
docker logs -f 容器名/ID

# 示例:查看 Nginx 日志
docker logs -f mynginx

7. 复制文件(宿主机 ↔ 容器)

复制代码
# 从容器复制文件到宿主机
docker cp 容器名:容器路径 宿主机路径

# 示例:把 Nginx 配置文件复制到本地
docker cp mynginx:/etc/nginx/nginx.conf /home/

8. 暂停 / 恢复容器

复制代码
docker pause 容器名/ID
docker unpause 容器名/ID

9. 重命名容器

复制代码
docker rename 旧名 新名

10. 查看容器内文件变化(对比原始镜像)

复制代码
docker diff 容器名/ID

11. 等待容器停止(阻塞直到容器停)

复制代码
docker wait 容器名/ID

11.4、数据卷(Volume)命令

用于数据持久化,防止容器删除后数据丢失

复制代码
# 创建数据卷
docker volume create myvolume

# 查看所有数据卷
docker volume ls

# 查看数据卷详情
docker volume inspect myvolume

# 删除无用数据卷
docker volume prune

# 删除指定数据卷
docker volume rm 卷名

11.5、网络(Network)命令

复制代码
# 查看所有网络
docker network ls

# 创建自定义网络
docker network create mynet

# 删除网络
docker network rm mynet

11.5.1. 容器连接 / 断开网络

复制代码
docker network connect 网络名 容器名
docker network disconnect 网络名 容器名

11.5.2. 清理无用网络

复制代码
docker network prune

11.6、Docker 系统清理命令

复制代码
# 查看 Docker 占用空间
docker system df

# 清理停止的容器、无用镜像、缓存(安全清理)
docker system prune

# 强制清理所有无用资源(慎用!会删除未使用的镜像)
docker system prune -a

11.7、Docker Compose 常用命令(必备)

用于一键启动多个容器(如 Nginx + MySQL + Redis)

docker-compose

旧版独立工具(Python 编写)| 需要单独安装 docker-compose 二进制文件|已废弃,不再维护|仅支持老版本 Docker

docker compose

Docker 官方内置插件(Go 编写)|安装 Docker Desktop 后自带,无需额外安装|官方推荐,持续更新|支持所有新版 Docker 功能

11.7.1、基础核心命令(最常用)

作用 旧版(docker-compose) 新版(docker compose)
启动服务(前台) docker-compose up docker compose up
启动服务(后台守护进程) docker-compose up -d docker compose up -d
停止并删除容器 / 网络 docker-compose down docker compose down
停止服务(不删除容器) docker-compose stop docker compose stop
启动已停止的服务 docker-compose start docker compose start
重启服务 docker-compose restart docker compose restart
查看服务日志 docker-compose logs docker compose logs
实时查看日志 docker-compose logs -f docker compose logs -f

11.7.2、构建与更新命令

作用 旧版 新版
构建镜像并启动 docker-compose up --build docker compose up --build
仅构建镜像(不启动) docker-compose build docker compose build
拉取最新镜像 docker-compose pull docker compose pull
强制重新创建容器 docker-compose up --force-recreate docker compose up --force-recreate

11.7.3、查看与管理命令

作用 旧版 新版
查看运行中的服务 docker-compose ps docker compose ps
查看所有容器(含停止) docker-compose ps -a docker compose ps -a
进入容器终端 docker-compose exec 服务名 bash docker compose exec 服务名 bash
查看服务进程 docker-compose top docker compose top
验证配置文件语法 docker-compose config docker compose config
查看配置文件详情 docker-compose config -q docker compose config -q

11.7.4、删除与清理命令

作用 旧版 新版
删除停止的容器 docker-compose rm docker compose rm
停止 + 删除 + 删除镜像 docker-compose down --rmi all docker compose down --rmi all
删除 + 删除数据卷 docker-compose down -v docker compose down -v

11.7.5、补充

bash 复制代码
# 查看服务依赖/启动顺序
docker compose ps --all

# 只重启某个服务
docker compose restart 服务名

# 构建但不启动
docker compose build

# 拉取镜像但不启动
docker compose pull

# 检查配置文件是否正确
docker compose config -q

11.7.6、高频实用命令

1.最常用组合(开发必备)
复制代码
# 后台启动,有修改就重新构建镜像
docker compose up -d --build

# 停止并删除所有资源(保留数据卷)
docker compose down

# 停止并删除所有资源(连数据一起清空)
docker compose down -v
2. 调试命令
复制代码
# 实时查看所有日志
docker compose logs -f

# 查看单个服务日志
docker compose logs -f 服务名

# 进入容器内部
docker compose exec 服务名 sh
3. 批量更新服务
复制代码
# 拉取最新镜像 → 重启服务
docker compose pull && docker compose up -d

11.8、系统 & 其他(补充)

1. 实时查看事件(docker 运行日志)

复制代码
docker events

2. 挂载本地文件 / 目录并临时运行容器(常用调试)

复制代码
docker run --rm -v 本地目录:容器目录 镜像 命令

--rm:退出即删除容器,非常干净。

11.9、运行实例

1. 运行 Nginx 网页服务器

复制代码
docker run -d -p 80:80 --name mynginx nginx

访问:服务器IP 即可看到 Nginx 欢迎页

2. 运行 MySQL 数据库

复制代码
docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0

连接信息:IP:3306,账号 root,密码 123456

总结

  1. 镜像pull(下载)、images(查看)、rmi(删除)
  2. 容器run(启动)、ps(查看)、exec(进入)、stop(停止)、rm(删除)
  3. 日志logs -f(实时查看)
  4. 清理system prune(释放空间)
相关推荐
用户0328472220707 小时前
如何搭建本地yum源(上)
运维
武子康8 小时前
调查研究-183 Apple container:Mac 上用轻量 VM 跑 Linux 容器,Swift 会改写本地容器体验吗?
docker·容器·apple
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质3 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工3 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
Alsn863 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
酣大智3 天前
ARP代理--工作原理
运维·网络·arp·arp代理
shushangyun_3 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
施努卡机器视觉3 天前
SNK施努卡侧滑门锁上滑轮总成自动化装配线,从零件到组件,全流程精密制造方案
运维·自动化·制造