在阿里云 Windows Server 上安装 Docker,官方并不直接支持原生 Docker Desktop for Windows(因为它是基于 Hyper-V 的桌面版),但可以通过以下两种主流方式实现:
✅ 推荐方案一:使用 Docker Desktop for Windows + WSL2(适用于 Win Server 2019/2022)
⚠️ 注意:Windows Server 默认不包含 WSL2,需手动启用。
步骤如下:
1. 启用 WSL2
以管理员身份打开 PowerShell,运行:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
wsl --set-default-version 2
重启服务器。
2. 安装 Linux 发行版(如 Ubuntu)
从 Microsoft Store 安装 Ubuntu(或通过命令行):
wsl --install -d Ubuntu
首次启动会要求设置用户名和密码。
3. 下载并安装 Docker Desktop for Windows
- 访问官网:https://www.docker.com/products/docker-desktop/
- 下载最新版的
Docker Desktop Installer.exe - 安装时勾选 "Use WSL 2 instead of Hyper-V"
4. 验证安装
在 PowerShell 或 CMD 中运行:
docker --version
docker run hello-world
如果输出成功信息,则安装完成。
✅ 推荐方案二:使用 Linux 容器 + Hyper-V(传统方式,不依赖 WSL)
适用于不想使用 WSL 的场景,但性能略低。
步骤:
1. 启用 Hyper-V 和 Containers 功能
以管理员身份打开 PowerShell:
Install-WindowsFeature -Name Hyper-V -IncludeManagementTools
Install-WindowsFeature -Name Containers
重启服务器。
2. 安装 Docker Engine(非 Desktop)
由于 Windows Server 不支持 Docker Desktop 的服务端模式,推荐使用 Docker Engine for Windows:
方法 A:通过 Chocolatey 安装(推荐)
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
choco install docker-engine -y
方法 B:手动下载 MSI 安装包
- 访问:https://docs.docker.com/engine/install/windows/
- 下载对应版本的
.msi安装包(如docker-24.0.5.msi) - 双击安装,选择“Windows Containers”作为默认运行时
3. 配置 Docker 守护进程(可选)
编辑或创建文件:
C:ProgramDatadockerconfigdaemon.json
内容示例(如需镜像提速):
{
"registry-mirrors": ["https://mirror.ccs.tencentyun.com"]
}
然后重启 Docker 服务:
Restart-Service docker
4. 验证安装
docker --version
docker run --platform windows/amd64 hello-world
📌 注意事项
| 项目 | 说明 |
|---|---|
| 系统要求 | Windows Server 2019 或 2022(建议 2022) |
| CPU/内存 | 至少 4GB RAM,推荐 8GB+ |
| 磁盘空间 | 至少 20GB 可用空间 |
| 网络 | 确保能访问X_X(拉取镜像)或配置国内镜像源 |
| 安全组 | 阿里云 ECS 需开放必要端口(如 2375、2376 等,谨慎暴露) |
| 许可证 | Docker Desktop 个人免费,商业使用需订阅 |
🔄 替代方案:直接使用 Linux 实例
如果你主要用途是运行 Docker 容器,更推荐直接使用阿里云 Linux 实例(Ubuntu/CentOS),因为:
- Docker 对 Linux 支持最好
- 性能更高
- 社区资源丰富
- 无额外虚拟化开销
✅ 总结
| 方案 | 适用场景 | 难度 | 推荐度 |
|---|---|---|---|
| WSL2 + Docker Desktop | 开发测试环境 | 中等 | ⭐⭐⭐⭐ |
| Hyper-V + Docker Engine | 生产环境(Windows 容器) | 较高 | ⭐⭐⭐ |
| 改用 Linux 实例 | 所有 Docker 场景 | 简单 | ⭐⭐⭐⭐⭐ |
如你明确需要在 Windows Server 上运行 Windows 容器,请选择方案二;如果只是需要 Docker 环境,强烈建议迁移到 Linux。
如需具体某一步的详细截图或命令帮助,请告诉我你的 Windows Server 版本(2019/2022)和用途,我可以提供更精准指导。
轻量云Cloud