在 Windows Server 云服务器上运行 Docker,需要根据你使用的 Windows Server 版本和具体需求选择合适的方案。目前,Windows 上运行 Docker 主要有两种方式:
- Docker Desktop(适用于 Windows Server 2019/2022 桌面体验版)
- 独立的 Docker Engine for Windows Server(传统方式,基于 Microsoft 的容器支持)
但需要注意:从 Docker Desktop 4.25 开始,官方已不再支持在 Windows Server 上安装 Docker Desktop。因此推荐使用 Microsoft 提供的容器功能 + 社区版 Moby / Docker-Engine 替代方案。
✅ 推荐方案:使用 Windows 容器功能 + 安装容器运行时(如 Moby 或直接使用 containerd)
步骤 1:确认系统版本和要求
- 支持的操作系统:
- Windows Server 2019(含桌面体验)
- Windows Server 2022(含桌面体验或核心版)
- 必须启用 容器功能(Containers feature)
- 建议使用 64位系统
- 管理员权限
步骤 2:启用容器功能
以管理员身份打开 PowerShell 并运行:
# 安装 Containers 功能
Install-WindowsFeature -Name Containers
# 重启服务器
Restart-Computer -Force
步骤 3:安装容器运行时(推荐使用 Moby 或直接拉取 Docker Engine)
方式一:安装 Moby(开源项目,由 Microsoft 维护)
Moby 是微软为 Windows Server 提供的 Docker 引擎分支。
# 下载并安装 Moby
curl -fsSL https://get.docker.com/moby | powershell
# 或手动下载安装包(推荐稳定版本)
Invoke-WebRequest -Uri "https://github.com/moby/moby/releases/download/v24.0.7/moby-engine-24.0.7.zip" -OutFile "moby.zip"
Expand-Archive -Path moby.zip -DestinationPath C:moby
Add-Content -Path "$env:PATH" -Value ";C:moby" # 添加到环境变量(需配置系统 PATH)
然后将 C:moby
添加到系统 PATH
环境变量中。
启动服务:
# 启动 Dockerd(Moby daemon)
.dockerd.exe --register-service
Start-Service docker
验证是否成功:
docker version
方式二:使用 Microsoft 的脚本自动安装 Docker Engine
微软提供了一个自动化脚本来安装 Docker:
# 安装最新版 Docker Engine(社区版)
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
Install-Package -Name docker -ProviderName DockerMsftProvider -Update
Start-Service docker
⚠️ 注意:这个源可能已经逐渐被弃用,建议优先使用 Moby 或手动部署。
步骤 4:测试运行一个 Windows 容器
# 拉取一个 Nano Server 镜像(需要匹配主机 OS 版本)
docker pull mcr.microsoft.com/windows/nanoserver:ltsc2022
# 运行测试容器
docker run mcr.microsoft.com/windows/nanoserver:ltsc2022 echo "Hello from Windows Container!"
步骤 5:(可选)配置 Docker 远程访问或使用 Docker Compose
- 安装 Docker Compose:
Invoke-WebRequest -Uri "https://github.com/docker/compose/releases/download/v2.23.0/docker-compose-windows-x86_64.exe" -OutFile "docker-compose.exe"
Move-Item .docker-compose.exe 'C:Program FilesDocker'
确保 docker-compose
在 PATH 中。
❗注意事项
项目 | 说明 |
---|---|
镜像兼容性 | Windows 容器必须与宿主操作系统版本兼容(如 ltsc2022 镜像只能运行在 WinSrv 2022 上) |
资源开销大 | Windows 容器通常比 Linux 容器占用更多内存和磁盘空间 |
不支持 Linux 容器(除非 WSL2) | 在标准 Windows Server 上无法运行 Linux 容器;WSL2 不适用于 Server Core |
性能建议 | 使用 SSD 存储、至少 4GB 内存以上 |
🔁 替代方案:使用 Linux 云服务器运行 Docker(更推荐)
由于 Windows 容器生态有限且资源消耗高,大多数场景下更推荐使用 Linux 云服务器(如 Ubuntu/CentOS)来运行 Docker 和应用容器,特别是如果你的应用可以容器化为 Linux 容器。
总结
要在 Windows Server 云服务器上运行 Docker,推荐步骤如下:
- 启用
Containers
功能 - 安装 Moby 或旧版 Docker Engine(通过 PowerShell 脚本)
- 启动
dockerd
服务 - 使用
docker
命令管理 Windows 容器
📌 重要提示:
避免尝试在现代 Windows Server 上安装 Docker Desktop,它已被官方弃用支持。应使用原生容器支持 + Moby/Docker-Engine 方案。
如你能提供具体的 Windows Server 版本(如 2019 Datacenter with Desktop Experience),我可以给出更精确的命令。