在 Windows Server 2019 上安装 Docker,推荐使用 Docker Enterprise Edition (Docker EE) 或通过 Microsoft 与 Docker 合作支持的容器功能 来部署。不过需要注意的是:
⚠️ Docker Engine – Community(即通常所说的 Docker CE)不支持 Windows Server 2019。
社区版(Community Edition)主要支持 Windows 10 桌面版,不适用于 Windows Server。
✅ 推荐方案:使用 Docker EE(Enterprise Edition) 或 Microsoft 托管的容器运行时
方案一:安装 Docker EE(旧方式,已逐步淘汰)
Docker 曾为 Windows Server 提供 Docker EE for Windows Server,但自 2020 年起,Docker 官方已停止对 Windows Server 上 Docker EE 的独立发行支持。
? 注意:从 Docker 19.03 版本之后,Docker EE for Windows 不再独立发布,转由 Microsoft 通过其渠道提供支持。
✅ 推荐方案:使用 Microsoft 提供的容器功能(当前最佳实践)
微软推荐使用其 原生容器支持,结合 Microsoft Container Runtime 和 Docker CLI(可选)来管理容器。
步骤概览:
-
启用容器功能
Install-WindowsFeature -Name Containers -
重启服务器
Restart-Computer -Force -
安装容器运行时(推荐使用 Moby / Microsoft Container Runtime)
实际上,微软使用的是基于 Moby 的容器运行时,可通过 PowerShell 安装:
# 安装 Moby(由 Microsoft 提供) Invoke-WebRequest "https://github.com/moby/moby/releases/download/v19.03.5/moby-engine-19.03.5.zip" -UseBasicParsing -OutFile "moby.zip" Expand-Archive -Path moby.zip -DestinationPath C: Add-MoveItem -Path C:moby* -Destination "C:Program Files"? 你也可以使用 Microsoft 官方脚本安装容器运行时(参考 Microsoft 文档)
-
启动 Docker 服务(即 containerd 或 dockerd)
Start-Service docker Set-Service docker -StartupType Automatic -
验证安装
docker version docker run hello-world:nanoserver
? 安装 Docker CLI(可选)
虽然容器运行时是 Microsoft 提供的,但你可以单独安装 Docker CLI 工具来使用熟悉的 docker 命令:
Invoke-WebRequest "https://download.docker.com/components/engine/windows-server/docker.zip" -UseBasicParsing -OutFile "docker.zip"
Expand-Archive -Path docker.zip -DestinationPath $env:ProgramFiles
$env:PATH += ";$env:ProgramFilesdocker"
[Environment]::SetEnvironmentVariable("PATH", $env:PATH + ";$env:ProgramFilesdocker", [EnvironmentVariableTarget]::Machine)
然后运行:
docker --version
✅ 支持的 Docker 版本(适用于 Windows Server 2019)
| 组件 | 推荐版本 |
|---|---|
| Docker CLI | 19.03.x(兼容) |
| 容器运行时(Moby / dockerd) | 19.03.5 或 Microsoft 提供的版本 |
| containerd | 1.4.x(随运行时一起) |
? 微软官方建议使用 Kubernetes + containerd 或 Docker CLI + Microsoft 容器运行时 的组合。
? 参考文档
- Microsoft Docs: Install Docker EE on Windows Server
- GitHub Moby: https://github.com/moby/moby
- Docker 官方公告:Docker EE for Windows 停止独立发布
✅ 总结
| 项目 | 推荐选择 |
|---|---|
| 是否支持 Docker CE | ❌ 不支持 |
| 是否支持 Docker EE | ⚠️ 已停止独立发布 |
| 推荐方式 | 启用 Containers 功能 + 安装 Microsoft 提供的 Moby 运行时 + Docker CLI |
| 稳定版本 | Docker 19.03.5(Moby 分支) |
| 最佳实践 | 使用 PowerShell 安装容器功能,配合 Docker CLI 管理 |
如你计划使用 Kubernetes 或现代容器编排,建议迁移到 containerd + CRI 架构,而非传统 Docker Engine。
如有具体使用场景(如 CI/CD、ASP.NET 容器化等),欢迎补充,我可以给出更具体的安装脚本。
CCLOUD博客