在 Windows Server 2019 上安装 Docker 需要使用 Docker EE(Enterprise Edition) 或通过 Microsoft 的容器功能 来支持。由于 Docker 官方已经停止对 Windows 上的 Docker Desktop 的支持(尤其是非桌面版系统),在 Windows Server 2019 上推荐使用 Microsoft 提供的容器功能 和 Docker 社区版(通过 PowerShell 安装)。
以下是详细的安装步骤:
✅ 步骤 1:启用容器功能
-
打开 PowerShell(以管理员身份运行)
-
安装 容器功能:
Install-WindowsFeature -Name Containers -
安装完成后,重启服务器:
Restart-Computer -Force
✅ 步骤 2:安装容器运行时(推荐使用 Microsoft 提供的脚本安装 Docker)
注意:Docker Engine 在 Windows 上通过社区维护,微软提供安装脚本简化流程。
-
打开 PowerShell(管理员)
-
下载并运行 Microsoft 提供的
Install-ContainerHost.ps1脚本(适用于旧版本,已弃用)
但更推荐使用 PowerShell Gallery 中的 DockerMsftProvider。 -
安装 DockerMsftProvider(用于安装 Docker EE):
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force -
安装 Docker:
Install-Package -Name docker -ProviderName DockerMsftProvider -
安装完成后,重启系统:
Restart-Computer -Force
✅ 步骤 3:验证安装
-
检查 Docker 版本:
docker --version -
查看 Docker 服务状态:
Get-Service docker -
启动 Docker 服务(如果未运行):
Start-Service docker -
设置 Docker 开机自启:
Set-Service docker -StartupType Automatic
✅ 步骤 4:测试运行容器
运行一个简单的 Windows 容器测试:
docker run mcr.microsoft.com/windows/nanoserver:1809 echo "Hello from Docker on Windows Server 2019!"
⚠️ 注意:你必须使用与主机内核版本兼容的镜像(如
1809对应 Windows Server 2019 的 1809 版本)。
可通过ver或[System.Environment]::OSVersion.Version查看系统版本。
🔁 可选:更新 Docker
如需更新 Docker:
Update-Package -Name docker -ProviderName DockerMsftProvider
❌ 常见问题
| 问题 | 解决方案 |
|---|---|
Install-Module 报错 |
运行 Set-ExecutionPolicy RemoteSigned -Force 并确保网络可访问 PSGallery |
| 镜像拉取失败 | 检查系统版本与镜像版本是否匹配(如 1809、20H2 等) |
| 无法运行 Linux 容器 | Windows Server 2019 默认仅支持 Windows 容器。Linux 容器需 WSL2(仅支持 Windows 10/11) |
📝 总结
在 Windows Server 2019 上安装 Docker 的推荐方式:
- 启用
Containers功能 - 使用
DockerMsftProvider安装 Docker EE - 重启并验证
- 运行 Windows 容器
⚠️ 注意:不支持 Linux 容器(除非使用 Hyper-V 隔离的实验性功能,但不推荐生产使用)
🔗 参考文档
- Microsoft 官方文档 – 安装容器
- Docker on Windows Server
如果你计划使用更现代的容器方案(如 Kubernetes、containerd),建议考虑升级到 Windows Server 2022 或使用 Linux 服务器运行 Docker 以获得更好的兼容性和支持。
如需安装 containerd + Kubernetes,也可以继续提问。
CDNK博客