在 Windows Server 上安装 Docker,通常指的是安装 Docker Desktop for Windows(包含 Linux 容器支持)或 Docker Engine。由于 Windows Server 默认运行的是 Server Core 或桌面版,且微软对 Docker 的支持策略有所变化,以下是目前最推荐和标准的安装流程。
⚠️ 重要前提:版本与架构检查
- 操作系统版本:
- 推荐使用 Windows Server 2019 或 Windows Server 2022。
- 注意:Windows Server 2016 已不再受官方 Docker Desktop 支持,建议升级或使用旧版 Docker Engine。
- 架构:确保系统为 x64 (AMD64) 架构。ARM64 版本的 Windows Server 需要特定的 ARM64 镜像和配置。
- 虚拟化支持:必须在 BIOS/UEFI 中开启 Intel VT-x / AMD-V 虚拟化技术,并在 Hyper-V 管理器中确认功能已启用。
方法一:使用 Docker Desktop for Windows(推荐,适合大多数场景)
这是最简单的方法,它会自动处理 WSL 2 后端、Hyper-V 配置以及网络设置。
1. 下载安装包
访问 Docker 官网下载页面:https://www.docker.com/products/docker-desktop
- 选择 Windows 版本进行下载。
- 文件名通常为
Docker Desktop Installer.exe。
2. 运行安装程序
双击运行安装包,在安装向导中:
- 勾选 "Use WSL 2 instead of Hyper-V"(强烈建议)。WSL 2 提供了更好的性能和兼容性,是目前的默认推荐后端。
- 如果系统未安装 WSL 2,安装程序可能会提示你重启并自动安装相关组件。
- 点击 Install 开始安装。
3. 启动与验证
安装完成后,Docker Desktop 会自动启动(通常在系统托盘显示鲸鱼图标)。
打开 PowerShell 或 CMD,输入以下命令验证安装:
docker --version
docker run hello-world
如果看到 "Hello from Docker!" 字样,说明安装成功。
注意:对于 Windows Server 数据中心版(Datacenter),可能需要购买 Docker Desktop 的商业许可证才能在生产环境长期使用(个人开发测试免费)。如果是生产环境,请查阅 Docker 的许可条款。
方法二:手动安装 Docker Engine(适合无图形界面或特定需求)
如果你使用的是 Server Core 版本,或者不想安装 Docker Desktop 的 GUI 组件,可以手动安装 Docker Engine。
1. 启用必要功能
以管理员身份运行 PowerShell,启用 Hyper-V 和容器功能:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Enable-WindowsOptionalFeature -Online -FeatureName Containers
Restart-Computer
2. 下载并安装 Docker MSI
- 访问 Docker 官方 GitHub Releases 页面或文档中心获取对应版本的
.msi安装包。- 搜索关键词:
docker-ce-windows(Community Edition)。 - 或者直接访问:https://docs.docker.com/engine/install/windows-server/ 获取最新链接。
- 搜索关键词:
- 下载
docker-<version>.msi文件。 - 在命令行中静默安装(示例):
msiexec /i docker-<version>.msi /quiet /norestart
3. 配置镜像源(可选但推荐)
国内用户通常需要配置阿里云或清华大学的镜像提速,否则拉取镜像极慢。
创建或编辑文件 C:ProgramDatadockerconfigdaemon.json:
{
"registry-mirrors": [
"https://docker.m.daocloud.io",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com"
]
}
注意:如果文件不存在,请先创建。修改后需重启 Docker 服务:Restart-Service docker。
常见问题排查
-
报错 "Virtualization is not enabled"
- 原因:BIOS 中未开启虚拟化,或者 Hyper-V 与其他虚拟化软件(如 VMware Workstation, VirtualBox)冲突。
- 解决:进入 BIOS 开启 VT-x/AMD-V;若必须使用其他虚拟化软件,需在 Docker Desktop 设置中切换回 Hyper-V 模式(不推荐)或卸载冲突软件。
-
无法拉取镜像 (Pulling image failed)
- 原因:网络问题或 DNS 解析失败。
- 解决:尝试配置上述的
daemon.json镜像提速器,或修改服务器 DNS 为8.8.8.8/114.114.114.114。
-
权限问题
- 确保当前用户属于
docker-users组,或者直接使用管理员账户运行 PowerShell。
- 确保当前用户属于
总结
- 如果是开发测试或混合环境,直接下载 Docker Desktop for Windows 是最快路径。
- 如果是纯命令行服务器 (Core) 或大规模集群部署,建议使用 Docker Engine (MSI) 方式安装,并配合 WSL 2 或 Hyper-V 管理容器。
安装完成后,记得通过 docker info 查看详细信息,确认是否连接到了正确的守护进程。
CLOUD云计算