是的,Windows Server 2019 可以安装和运行 Docker,但有一些重要的前提条件和限制需要注意。
✅ 支持情况概述:
Windows Server 2019 原生支持 Docker 容器(基于 Windows 容器),并且可以通过以下方式使用 Docker:
- 使用 Windows 容器(运行基于 Windows 的镜像)
- 不支持直接运行 Linux 容器(除非启用特定功能如 WSL2 或通过 Hyper-V 隔离)
✅ 安装 Docker 的方式
方法一:通过 PowerShell 安装容器功能和 Docker
-
以管理员身份打开 PowerShell
-
安装“容器”功能
Install-WindowsFeature -Name Containers -
重启服务器
Restart-Computer -Force -
安装 Docker Engine(微软维护的版本)
使用 PowerShell 模块
DockerMsftProvider:# 安装包管理提供程序 Install-Module -Name DockerMsftProvider -Repository PSGallery -Force # 安装 Docker Install-Package -Name docker -ProviderName DockerMsftProvider -Force # 再次重启 Restart-Computer -Force -
验证安装
docker --version docker run hello-world:nanoserver
⚠️ 注意:这个
DockerMsftProvider方式已经逐渐被微软弃用。推荐使用下面的方法二。
方法二(推荐):使用官方 Docker Desktop(不适用于 Server)
⚠️ 注意:Docker Desktop 不能在 Windows Server 上安装,它只支持 Windows 10/11 Pro 或 Enterprise。
所以,如果你在 Windows Server 2019 上,应使用方法三。
方法三(现代推荐):使用 Mirantis Container Runtime 或手动部署 Moby/Docker
由于微软与 Docker 合作关系变化,现在推荐使用:
- Mirantis Container Runtime(原 Docker EE for Windows)
- 这是企业级 Docker 引擎的延续。
- 下载地址:https://www.mirantis.com/software/mcr/
步骤简要:
- 注册 Mirantis 账户并获取许可证(免费试用可用)
- 下载并安装 Mirantis Container Runtime
- 配置并启动服务
或者使用开源的 Moby + containerd 组合(更复杂,适合高级用户)
🐳 支持的容器类型
| 类型 | 是否支持 | 说明 |
|---|---|---|
| Windows 容器 | ✅ 是 | 推荐使用 nanoserver、windowsservercore 镜像 |
| Linux 容器 | ❌ 否(默认) ✅ 有条件 |
需要 WSL2 和特定配置(Server 2019 不原生支持 WSL2) |
💡 提示:Windows Server 2019 不支持 WSL2,因此无法轻松运行 Linux 容器。若需混合环境,建议使用 Windows 10/11 或升级到更新的系统。
🔧 常见问题
- Docker 版本兼容性:确保选择支持 Windows Server 2019 的版本。
- 系统要求:
- 必须是 64位系统
- 启用 Hyper-V 和 容器 功能(部分功能需要 Hyper-V 角色)
- 至少 4GB 内存,建议 8GB+
- PowerShell 执行策略:可能需要设置为
RemoteSigned或Unrestricted
✅ 总结
| 项目 | 是否支持 |
|---|---|
| 安装 Docker | ✅ 支持(通过原生容器 + Docker Engine) |
| 运行 Windows 容器 | ✅ 支持 |
| 运行 Linux 容器 | ❌ 不支持(无 WSL2) |
| 使用 Docker Desktop | ❌ 不支持 |
| 推荐方案 | 使用 Mirantis Container Runtime 或传统 DockerMsftProvider |
📚 参考资料
- Microsoft Docs: Install Docker EE on Windows Server
- Mirantis: https://www.mirantis.com/
- Docker 文档归档:https://docs.docker.com/engine/installation/windows/docker-ee/
如果你告诉我你的具体用途(例如:部署 .NET 应用、测试、CI/CD),我可以给出更具体的安装建议。
云计算