在 Windows Server 2022 Standard 上安装 Docker,最推荐且官方支持的方式是使用 Docker Desktop for Windows(基于 Hyper-V 或 WSL 2)。
由于 Windows Server 2022 默认不包含图形界面(Server Core)或完整的桌面体验,且对容器运行时有特定要求,以下是针对两种常见场景的详细操作指南。
⚠️ 前置关键检查
在安装之前,请确保您的服务器满足以下条件:
- 操作系统版本:必须是 Windows Server 2022 Datacenter 或 Standard 的完整安装版(带有 GUI)。如果是 Server Core(无界面),则无法直接运行 Docker Desktop,需要手动配置 Docker Engine 或使用 WSL 2 子集(较复杂,不推荐新手尝试)。
- 虚拟化功能:必须在 BIOS/UEFI 中开启虚拟化技术(Intel VT-x / AMD-V),并在 Windows 中启用“虚拟机平台”和"Hypervisor"功能。
- 内存与存储:建议至少 4GB RAM 和 25GB 可用磁盘空间。
方法一:使用 Docker Desktop(推荐,适用于带 GUI 的版本)
这是最简单的方法,它会自动处理依赖项、WSL 2 后端和容器引擎。
1. 启用必要的 Windows 功能
以管理员身份打开 PowerShell,依次运行以下命令来启用核心功能:
# 启用 Containers 功能
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
# 启用 WSL 2 相关功能
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux -NoRestart
# 启用虚拟机平台 (Docker Desktop 依赖此)
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -NoRestart
注意:执行完上述命令后,系统可能需要重启。建议先重启一次服务器。
2. 下载并安装 Docker Desktop
- 访问 Docker 官网下载页面:Docker Hub – Docker Desktop。
- 找到 Windows Server 2022 对应的版本(通常选择
Docker Desktop.exe通用安装包即可,它会自动检测环境)。- 提示:如果找不到 Server 专用包,直接使用 Windows 10/11 版的 Docker Desktop 也可以,只要系统内核兼容。
- 运行安装程序,按照向导点击 "Next"。
- 在安装过程中,确保勾选 "Use WSL 2 instead of Hyper-V"(推荐使用 WSL 2,性能更好且更稳定)。
- 安装完成后,启动 Docker Desktop。首次启动会进行初始化配置,可能需要几分钟。
3. 验证安装
安装成功后,打开 PowerShell,输入以下命令测试:
docker --version
docker run hello-world
如果看到 Hello from Docker! 的消息,说明安装成功。
方法二:仅安装 Docker Engine(适用于 Server Core 或不想用 Docker Desktop)
如果您使用的是 Server Core 版本,或者不需要 Docker Desktop 的图形管理界面,只想运行轻量级的 Docker 守护进程,可以使用离线安装包或在线脚本安装 Docker Engine。
注意:此方法需要您手动处理镜像拉取、网络配置和权限问题。
步骤 1:启用容器功能
同样以管理员身份运行 PowerShell:
Install-WindowsFeature -Name Containers -IncludeManagementTools
步骤 2:下载 Docker Engine MSI 安装包
由于 Server 环境可能无法直接通过 winget 或 choco 获取最新版,建议从 GitHub 发布页下载对应版本的 MSI 文件。
- 访问:Docker Engine Releases on GitHub 或微软官方文档中的“安装 Docker Engine on Windows Server”。
- 下载文件名类似
docker-engine-<version>.msi的文件。
步骤 3:静默安装
将下载的 .msi 文件放入服务器,在 PowerShell 中运行:
# 替换 <path_to_msi> 为实际文件路径
msiexec /i "C:PathTodocker-engine-24.0.x.msi" /qn
步骤 4:配置并启动服务
安装完成后,通常需要配置 daemon.json 来指定镜像源(特别是国内用户需要配置阿里云或腾讯云镜像提速),然后重启服务:
# 创建配置文件目录
New-Item -ItemType Directory -Force -Path "C:ProgramDataDocker"
# 编辑 C:ProgramDataDockerconfigdaemon.json (添加 registry-mirrors 等配置)
# 例如:{"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]}
# 重启 Docker 服务
Restart-Service docker
常见问题与注意事项
-
权限问题:
在 Windows Server 上,普通用户可能没有权限运行 Docker 命令。如果遇到permission denied错误,请将当前用户添加到docker-users组,或者以管理员身份运行 PowerShell。 -
WSL 2 更新:
如果安装 Docker Desktop 时报错关于 WSL 2,请确保已安装最新的 WSL 2 Linux 内核更新。可以在微软 Store 中搜索 "WSL 2" 或通过命令行wsl --update更新。 -
资源限制:
Docker Desktop 会占用较多宿主机的 CPU 和内存资源。如果在生产环境中,建议评估资源配额,或者考虑使用方法二(Docker Engine)以获得更轻量的运行环境。 -
网络模式:
Windows Server 上的 Docker 默认使用 NAT 网络。如果需要宿主机直接暴露端口,需确认防火墙规则允许相应端口的入站流量。
总结:对于大多数 Windows Server 2022 标准版用户,方法一(Docker Desktop + WSL 2) 是最佳选择,因为它自动化程度高且维护方便。只有在必须使用无头模式(Headless/Core)时,才考虑手动安装 Docker Engine。
轻量云Cloud