在云服务器上使用 Windows Server 系统安装 Docker 是可行的,但需要注意以下几点:
⚠️ 重要前提说明
- Docker on Windows Server 支持的是 Windows 容器(Windows Containers),不是 Linux 容器(除非启用 Hyper-V 和特殊配置)。
- 仅支持特定版本的 Windows Server:
- Windows Server 2016
- Windows Server 2019
- Windows Server 2022
- 需要以 管理员权限 操作。
- 推荐使用 Datacenter 或 Standard 版本。
✅ 步骤:在 Windows Server 上安装 Docker
方法一:使用 PowerShell 安装(推荐)
1. 以管理员身份打开 PowerShell
右键“开始”菜单 → “Windows PowerShell (管理员)”
2. 安装容器功能
Install-WindowsFeature -Name Containers
安装完成后需要重启系统:
Restart-Computer -Force
3. 安装 Docker Engine
微软提供了一个脚本用于安装 Docker:
# 下载并安装 Docker-Microsoft PackageManagement Provider
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
# 安装 Docker 最新稳定版
Install-Package -Name docker -ProviderName DockerMsftProvider -Force
第一次运行时可能会提示安装 NuGet 提供程序,输入
Y继续。
4. 重启服务器使 Docker 生效
Restart-Computer -Force
5. 验证安装是否成功
重启后再次打开 PowerShell(管理员),执行:
docker --version
输出类似:
Docker version 20.10.17, build b4f7ef8
再查看 Docker 服务状态:
Get-Service docker
如果状态不是 Running,可以启动它:
Start-Service docker
方法二:手动下载安装包(可选)
你也可以从微软官方镜像或 Docker 官方渠道下载 .zip 包手动安装:
- 访问:https://download.docker.com/components/engine/windows-server/
- 下载对应版本的
docker.zip - 解压到
C:Program Filesdocker - 注册为服务:
& $env:ProgramFilesdockerdockerd.exe --register-service
- 启动服务:
Start-Service docker
? 使用 Docker(Windows 容器示例)
拉取一个 Windows 容器镜像(例如 Nano Server):
docker pull mcr.microsoft.com/windows/nanoserver:ltsc2022
运行测试容器:
docker run --rm mcr.microsoft.com/windows/nanoserver:ltsc2022 echo "Hello from Windows Container!"
? 常见问题与注意事项
| 问题 | 解决方法 |
|---|---|
Install-WindowsFeature 报错 |
确保是完整版 Windows Server,非 Core 可视化管理工具可能需先安装 RSAT |
| 无法拉取镜像 | 检查网络、防火墙,确认系统版本与镜像标签匹配(如 ltsc2022, 20H2 等) |
| Docker 服务无法启动 | 查看事件日志,确保 Containers 功能已启用 |
| 想运行 Linux 容器? | 需启用 WSL2 + Hyper-V,在 Windows Server 上不推荐,建议用 Linux 云服务器 |
✅ 推荐场景
- 在 Windows Server 上部署 .NET Framework / .NET Core 应用
- 使用 IIS、SQL Server 等 Windows 服务容器化
- 企业内网环境统一部署管理
❌ 不推荐场景
- 主要用 Linux 容器 → 建议直接使用 Linux 云服务器(如 Ubuntu/CentOS)
- 资源有限的小型实例 → Docker on Windows 占用资源较多
? 参考文档
- Microsoft Docs: Install Docker EE on Windows Server
- Docker 官方:Windows Containers
如果你提供具体的 Windows Server 版本号(如 2022 Datacenter) 和 云平台(阿里云、腾讯云、AWS、Azure),我可以给出更精确的命令和适配建议。
CDNK博客