Windows Server 2019 支持安装 Docker EE(Enterprise Edition),也称为 Docker Engine – Enterprise,或者通过 Microsoft 和 Docker 合作支持的容器功能来运行容器。不过需要注意的是,Docker 官方在 2020 年之后逐步将重点转向 Linux 和 Docker Desktop,对 Windows Server 的原生 Docker EE 支持有所调整。
以下是 Windows Server 2019 上可以安装和使用的 Docker 相关版本和方案:
✅ 推荐方案:使用 Microsoft 提供的容器功能 + Docker CLI
1. 安装 Windows 容器功能
Windows Server 2019 原生支持 Windows 容器,你可以通过 PowerShell 安装:
# 安装容器功能
Install-WindowsFeature -Name Containers
# 重启服务器
Restart-Computer -Force
2. 安装容器运行时(推荐使用 Moby / Docker 兼容引擎)
微软推荐使用 Moby Project 构建的容器运行时,但你可以安装与 Docker 兼容的引擎。
方法一:安装 Docker EE for Windows Server(已归档,但仍可用)
Docker 曾为 Windows Server 提供 Docker EE(Enterprise Edition),适用于 Windows Server 2016 和 2019。
- 支持的版本:Docker EE 18.09、19.03 等
- 安装方式(PowerShell):
# 安装 Docker-Microsoft PowerShell 模块
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
# 安装 Docker Engine
Install-Package -Name docker -ProviderName DockerMsftProvider
# 重启服务器
Restart-Computer -Force
⚠️ 注意:
DockerMsftProvider已被微软弃用(自 2022 年起),但对 Windows Server 2019 仍可使用,适合离线或内网环境。
3. 使用官方 Docker CLI + Windows 容器运行时
即使不安装 Docker 引擎,你也可以:
- 使用
docker CLI工具连接远程 Docker 主机 - 或使用 Docker Desktop(仅适用于 Windows 10/11,不支持 Server 2019)
✅ 当前推荐做法(2024 年及以后)
由于 Docker EE 已停止对 Windows Server 的持续支持,建议采用以下替代方案:
✔️ 使用 containerd + Kubernetes(如 AKS-HCI、OpenShift、Rancher)
- 微软推荐在 Windows Server 上使用 containerd 作为容器运行时,尤其在与 Kubernetes 集成时。
- 可通过 Kubernetes 运行 Windows 容器(如 .NET Framework 应用)。
✔️ 使用 Microsoft Container Suite
- 包括:Windows Server 容器、Azure Kubernetes Service (AKS) on Azure Stack HCI、Windows Containers on Azure
📌 总结:Windows Server 2019 支持的 Docker 版本
| 项目 | 是否支持 | 说明 |
|---|---|---|
| Docker EE 18.09 | ✅ 是 | 官方支持,可通过 PowerShell 安装 |
| Docker EE 19.03 | ✅ 是 | 最后支持 Windows Server 的版本之一 |
| Docker Desktop | ❌ 否 | 仅支持 Windows 10/11,不支持 Server |
| Docker CLI | ✅ 是 | 可单独安装,用于连接远程 Docker 主机 |
| containerd | ✅ 是 | 微软推荐的现代容器运行时 |
| Windows 容器 | ✅ 是 | 原生支持,可用于运行基于 Windows 的镜像 |
🔧 验证安装
安装完成后,运行:
docker --version
docker run hello-world:nanoserver
📚 参考资料
- Microsoft 官方文档:Install Windows Server containers
- Docker 文档:Docker EE for Windows Server(已归档)
如果你有具体用途(如运行 .NET 应用、部署微服务、使用 Kubernetes),可以进一步推荐合适的方案。
云服务器