在 Windows 系统上安装 Docker Desktop

前言

Docker是一个超级流行的跨平台应用程序,可以轻松构建、共享和运行容器,满足各种跨平台部署软件和代码的需求。

系统要求

在开始安装之前,请确保您的 Windows 系统满足以下要求:

硬件要求

  • 64位处理器
  • 4GB 系统 RAM(建议 8GB 或更多)
  • 必须在 BIOS 中启用硬件虚拟化支持

软件要求

  • Windows 10 64位:专业版、企业版或教育版(版本 1909 或更高版本)
  • Windows 11 64位:家庭版、专业版、企业版或教育版
  • 需要启用 WSL 2 功能(Windows 10 版本 2004 及更高版本,或 Windows 11)

第一步:启用 Windows 功能

  1. 打开 PowerShell(管理员身份)并运行以下命令启用必要功能:
# 启用 Hyper-V
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

# 启用 WSL
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

# 启用虚拟机平台
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  1. 或者使用图形界面:
    • 打开"控制面板" → "程序" → "启用或关闭 Windows 功能"
    • 勾选以下选项:
      • Hyper-V
      • Windows 虚拟机监控程序平台
      • Windows Subsystem for Linux (WSL)
    • 点击"确定"并重启计算机

第二步:安装 WSL 2 Linux 内核更新

  1. 使用 PowerShell 下载并安装 WSL 2 内核更新:
# 下载 WSL2 内核更新
$url = "https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi"
$output = "$env:TEMP\wsl_update.msi"
Invoke-WebRequest -Uri $url -OutFile $output

# 安装更新
Start-Process msiexec.exe -Wait -ArgumentList "/I $output /quiet"

# 设置 WSL 2 为默认版本
wsl --set-default-version 2
  1. 或者手动访问 Microsoft 官方下载页面:
    https://aka.ms/wsl2kernel

    • 下载并运行"WSL2 Linux 内核更新包"
    • 按照安装向导完成安装
  2. 以上步骤不一定要执行,如果使用 Hyper-V 可以跳过

第三步:下载 Docker Desktop

  1. 使用 PowerShell 下载 Docker Desktop:
# 下载 Docker Desktop 安装程序
$url = "https://desktop.docker.com/win/stable/Docker%20Desktop%20Installer.exe"
$output = "$env:USERPROFILE\Downloads\DockerDesktopInstaller.exe"
Invoke-WebRequest -Uri $url -OutFile $output

# 或者手动下载
Start-Process "https://www.docker.com/products/docker-desktop"
  1. 或者访问 Docker 官方网站手动下载:
    https://www.docker.com/products/docker-desktop
    • 点击"Download for Windows"按钮
    • 下载稳定版(Stable)的 Docker Desktop Installer.exe

第四步:安装 Docker Desktop

  1. 使用 PowerShell 静默安装 Docker Desktop:
# 运行安装程序(静默安装)
$installerPath = "$env:USERPROFILE\Downloads\DockerDesktopInstaller.exe"
Start-Process -FilePath $installerPath -ArgumentList "install --quiet" -Wait

# 或者使用默认设置安装
Start-Process -FilePath $installerPath -Wait
  1. 或者双击运行下载的 Docker Desktop Installer.exe 文件
    • 在安装向导中,确保选中以下选项:
      • 将 Docker Desktop 添加到 PATH
      • 安装 Windows 容器组件(可选,但推荐)
    • 点击"OK"开始安装过程
    • 安装完成后,点击"Close and restart"重启计算机

第五步:配置 Docker Desktop

  1. 首次启动 Docker Desktop,您会看到 Docker 的欢迎界面
  2. 接受服务条款
  3. 选择使用 WSL 2 而不是 Hyper-V(推荐)
  4. 等待 Docker 完成初始设置(这可能需要几分钟)
  5. 如果前面的第二步没有安装 WSL 2,这里可以选择 Hyper-V(推荐)

第六步:验证安装

  1. 管理员打开命令提示符(CMD)或 PowerShell
  2. 输入以下命令验证 Docker 安装:
# 检查 Docker 版本
docker version

# 或者
docker --version
  1. 输入以下命令验证 Docker 运行状态:
docker info
  1. 运行测试容器以确认一切正常:
docker run --rm hello-world

如果看到"Hello from Docker!"消息,说明安装成功!

常见问题解决

问题1:Docker Desktop 无法启动

  • 解决方案:确保已启用所有必要的 Windows 功能并已安装 WSL 2 内核更新
  • 命令行检查:
# 检查 Hyper-V 状态
Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V

# 检查 WSL 状态
wsl --list --verbose

问题2:WSL 2 安装失败

  • 解决方案:运行以下命令手动安装 WSL 2:
# 安装 WSL
wsl --install

# 设置默认版本为 WSL 2
wsl --set-default-version 2

# 更新 WSL
wsl --update

问题3:虚拟化未启用

  • 解决方案:
    1. 重启计算机并进入 BIOS/UEFI 设置
    2. 找到虚拟化设置(通常位于"高级"或"CPU 配置"中)
    3. 启用 Intel Virtualization Technology (VT-x) 或 AMD-V
    4. 保存设置并重启计算机
  • 命令行检查虚拟化状态:
# 检查虚拟化是否启用
systeminfo | Select-String "虚拟化"

问题4:Docker 命令在 PowerShell 中不起作用

  • 解决方案:以管理员身份运行 PowerShell,然后执行:
Set-ExecutionPolicy RemoteSigned

问题5:端口冲突

  • 解决方案:检查并释放被占用的端口
# 查看端口占用情况
netstat -ano | findstr :2375

# 结束占用端口的进程(将<PID>替换为实际进程ID)
taskkill /f /pid <PID>

配置优化

调整资源分配

  1. 右键单击系统托盘中的 Docker 图标
  2. 选择"Settings"
  3. 在"Resources"选项卡中,调整:
    • CPU 核心数
    • 内存分配(建议至少 4GB)
    • 磁盘映像大小

启用 Kubernetes(可选)

  1. 在 Docker Desktop 设置中,选择"Kubernetes"选项卡
  2. 勾选"Enable Kubernetes"
  3. 点击"Apply & Restart"

命令行配置 Docker 守护进程

# 创建或编辑 Docker 配置文件
notepad "$env:USERPROFILE\.docker\daemon.json"

# 添加以下内容优化配置
{
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com"
  ],
  "insecure-registries": [],
  "debug": true,
  "experimental": false,
  "features": {
    "buildkit": true
  }
}

使用 Docker

基本命令

# 拉取镜像
docker pull [镜像名]

# 运行容器
docker run [选项] [镜像名]

# 查看运行中的容器
docker ps

# 查看所有容器
docker ps -a

# 停止容器
docker stop [容器ID]

# 删除容器
docker rm [容器ID]

# 查看镜像
docker images

# 删除镜像
docker rmi [镜像ID]

# 查看 Docker 系统信息
docker system info

# 清理未使用的资源
docker system prune -a

示例:运行 Nginx 容器

# 拉取 Nginx 镜像
docker pull nginx

# 运行 Nginx 容器
docker run -d -p 80:80 --name webserver nginx

# 查看容器日志
docker logs webserver

# 停止容器
docker stop webserver

# 删除容器
docker rm webserver

然后在浏览器中访问 http://localhost 查看 Nginx 欢迎页面。

卸载 Docker Desktop

如果需要卸载 Docker Desktop,可以使用以下命令:

# 卸载 Docker Desktop
& "$env:ProgramFiles\Docker\Docker\Docker Desktop.exe" uninstall

# 或者使用安装程序卸载
& "$env:USERPROFILE\Downloads\DockerDesktopInstaller.exe" uninstall

# 清理残留文件
Remove-Item -Recurse -Force "$env:ProgramFiles\Docker"
Remove-Item -Recurse -Force "$env:APPDATA\Docker"
Remove-Item -Recurse -Force "$env:LOCALAPPDATA\Docker"

参考文献

posted on 2025-09-03 21:11  cmxcxd  阅读(300)  评论(0)    收藏  举报