在 Windows Server 2019 上运行 Linux 容器(Linux Containers)是完全支持的,但需要满足特定条件并正确配置。以下是详细步骤和注意事项:
✅ 前提条件
- Windows Server 2019 版本要求:
- 必须是 Version 1809 或更高版本(包括 1903、1909、20H2、21H2 等)。
- 建议使用最新累积更新,以确保兼容性。
- 启用 Hyper-V(推荐方式):
- Docker Desktop for Windows 或 Docker CE 使用 Hyper-V 作为后端来运行 Linux 容器。
- 或者使用 WSL 2(仅适用于 Windows 10/Server 2022+,不支持 Server 2019)。
- 安装 Docker Engine:
- 推荐使用 Docker Enterprise Edition (EE) 或 Docker Community Edition (CE),从官方渠道安装。
🛠️ 安装步骤
1. 启用 Hyper-V
# 以管理员身份运行 PowerShell
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
⚠️ 重启服务器后生效。
2. 安装 Docker
-
方法一:通过 Chocolatey(推荐)
choco install docker-desktop # 或安装 Docker Engine(无 GUI) choco install docker-engine -
方法二:手动下载 MSI 安装包
- 访问 Docker 官方下载页面
- 选择 Docker Enterprise Edition 或 Docker Community Edition
- 下载
.msi安装包并运行
3. 验证安装
docker version
docker info
4. 测试 Linux 容器
docker run --rm hello-world
如果输出中包含 Hello from Docker! 且说明正在运行 Linux 容器,则配置成功。
❗ 重要注意事项
| 项目 | 说明 |
|---|---|
| WSL 2 不支持 | Windows Server 2019 不支持 WSL 2,因此必须使用 Hyper-V 后端。 |
| Hyper-V 隔离 | Linux 容器运行在轻量级 Hyper-V 虚拟机中,性能略有开销,但兼容性最好。 |
| 内核模块 | Docker 会自动提供必要的 Linux 内核环境,无需手动安装 Linux 内核。 |
| 资源限制 | 确保服务器有足够的内存和 CPU 资源(每个 Linux 容器约需 50–100 MB 内存)。 |
| 防火墙规则 | 如需外部访问容器端口,需配置 Windows 防火墙入站规则。 |
🔍 故障排查
-
错误:“Cannot connect to the Docker daemon”
- 检查 Docker 服务是否运行:
Get-Service Docker - 重启 Docker 服务:
Restart-Service Docker
- 检查 Docker 服务是否运行:
-
错误:“hyper-v feature not enabled”
- 重新启用 Hyper-V 并重启服务器。
-
容器启动失败
- 查看日志:
docker logs <container_id> - 检查镜像是否兼容:
docker pull ubuntu:latest测试基础镜像
- 查看日志:
✅ 总结
在 Windows Server 2019 上运行 Linux 容器的标准方式是:
启用 Hyper-V → 安装 Docker Engine → 使用 Hyper-V 后端运行 Linux 容器
这是微软官方支持的方式,稳定且兼容性好。避免尝试使用 WSL 2,因为它仅在 Windows 10 1903+ 和 Windows Server 2022+ 中支持。
如需进一步帮助,可提供具体错误信息以便精准诊断。
云计算