Windows Server 2019 支持安装 Docker EE(Enterprise Edition) 或通过 Docker Desktop for Windows Server(有限支持),但更常见和推荐的方式是使用 Microsoft 提供的容器功能和 Docker 的兼容版本。以下是详细说明:
✅ 支持的 Docker 版本和安装方式
1. Docker EE for Windows Server(推荐)
- Docker 官方为 Windows Server 2019 提供了 Docker Enterprise Edition(Docker EE)。
- 实际上,从 Docker 17.06 开始,Docker 支持在 Windows Server 2016 和 2019 上运行 Windows 容器。
- 常见支持的版本:
- Docker 18.09
- Docker 19.03
- 更高版本如 20.10 也有支持,但需注意兼容性。
⚠️ 注意:Docker EE 已于 2020 年后逐步被 Mirantis 接管,现在由 Mirantis Container Runtime (MCR) 提供支持。
2. 使用 PowerShell 安装 Docker(推荐方式)
微软与 Docker 合作,提供了一种通过 PowerShell 安装 Docker 的简便方式:
# 安装容器功能
Install-WindowsFeature -Name Containers
# 重启服务器
Restart-Computer -Force
# 安装 Docker(会自动安装兼容的版本)
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
Install-Package -Name docker -ProviderName DockerMsftProvider -Force
# 启动 Docker 服务
Start-Service Docker
这种方式安装的是 由 Microsoft 签名和验证的 Docker 版本,通常为 Docker 19.03 或类似稳定版本,与 Windows Server 2019 兼容性最好。
3. Docker Desktop for Windows Server(不推荐)
- Docker Desktop 主要用于 Windows 10/11 桌面版。
- 虽然可以通过特殊方式在 Windows Server 上安装,但 官方不推荐用于生产环境。
- 需要手动启用 GUI 和相关组件,复杂且不稳定。
✅ 支持的容器类型
- Windows 容器:原生支持,使用 Windows Server Core 或 Nano Server 镜像。
- Linux 容器:通过 WSL2 或 Hyper-V 后端运行,但在 Windows Server 2019 上支持有限,通常不推荐。Windows Server 2019 不支持 WSL2,默认只能运行 Windows 容器。
?️ 版本建议(2024 年仍可用)
| Docker 版本 | 是否支持 | 备注 |
|---|---|---|
| Docker 18.09 | ✅ 是 | 微软官方推荐,稳定 |
| Docker 19.03 | ✅ 是 | 支持良好,广泛使用 |
| Docker 20.10 | ⚠️ 有条件 | 需 Mirantis 提供支持 |
| Docker 23.x+ | ❌ 不推荐 | 通常需要 Windows Server 2022 或更新系统 |
推荐使用 Docker 19.03,这是在 Windows Server 2019 上最稳定、广泛验证的版本。
? 替代方案:使用 Mirantis Container Runtime
由于 Docker EE 已移交 Mirantis,生产环境建议考虑:
- Mirantis Container Runtime (MCR):Docker 的企业级延续,支持 Windows Server。
- 官网:https://www.mirantis.com/
✅ 总结
| 项目 | 建议 |
|---|---|
| 操作系统 | Windows Server 2019(需打齐补丁) |
| 安装方式 | PowerShell 安装 DockerMsftProvider |
| 推荐版本 | Docker 19.03 |
| 容器类型 | 仅推荐 Windows 容器 |
| 生产环境 | 建议使用 Mirantis Container Runtime |
✅ 最终建议命令安装:
Install-WindowsFeature -Name Containers
Restart-Computer -Force
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
Install-Package -Name Docker -ProviderName DockerMsftProvider -Update -Force
Start-Service Docker
安装完成后可通过 docker --version 查看版本(通常为 19.03.x)。
如有进一步需求(如 Kubernetes 集成),可考虑使用 Mirantis 或 Rancher。
CDNK博客