在 Windows Server 2022 Standard 上安装 Docker,你需要使用 Docker Desktop for Windows 或更推荐的方式:通过 Microsoft 的容器功能和 Docker Engine(Moby)或 Mirantis Container Runtime 来部署。由于 Windows Server 主要用于生产环境,通常不推荐使用 Docker Desktop(它主要用于开发测试),而是使用原生的容器支持 + Docker 引擎。
以下是详细的安装步骤:
✅ 方法一:使用 PowerShell 安装容器功能 + Docker Engine(推荐用于服务器)
步骤 1:启用容器功能
以管理员身份运行 PowerShell:
# 安装容器功能
Install-WindowsFeature -Name Containers
# 重启服务器
Restart-Computer -Force
注意:安装完成后必须重启系统。
步骤 2:安装 Microsoft Hyper-V 和容器管理模块(可选但推荐)
# 安装管理工具(如需图形化管理)
Install-WindowsFeature -Name Hyper-V, RSAT-Hyper-V-Tools, RSAT-Storage-Replica -IncludeManagementTools
步骤 3:安装 Docker Engine(使用官方脚本安装)
微软与 Mirantis 合作提供了一个稳定的 Docker 引擎版本(Mirantis Container Runtime),你可以通过以下方式安装:
方式 A:使用官方提供的 Install-ContainerHost.ps1 脚本(已弃用)
⚠️ 注意:Install-ContainerHost.ps1 已被弃用。建议使用下面的方式 B。
方式 B:手动安装 Docker Engine(推荐)
-
下载最新版 Docker Engine for Windows Server:
访问:https://github.com/moby/moby/releases
或使用社区维护的包(例如由 Stardock 提供):推荐使用 docker-install.ps1 脚本自动安装:
# 下载安装脚本 Invoke-WebRequest -Uri https://get.docker.com/win/stable/docker.zip -OutFile docker.zip # 如果上面链接失效,尝试镜像: # https://mirror.tuna.tsinghua.edu.cn/docker-win/static/stable/x86_64/docker.zip示例(使用清华镜像提速):
# 使用国内镜像下载 Invoke-WebRequest -Uri "https://mirror.tuna.tsinghua.edu.cn/docker-win/static/stable/x86_64/docker-24.0.7.zip" -OutFile "docker.zip" -
解压到
C:Program FilesExpand-Archive -Path .docker.zip -DestinationPath C:ProgramFilesdocker -Force -
将
docker.exe添加到系统路径:$env:PATH += ";C:ProgramFilesdocker" # 永久添加到系统 PATH -
注册 Docker 为 Windows 服务
# 创建服务 New-Service -Name docker -BinaryPathName 'C:ProgramFilesdockerdockerd.exe --register-service' -StartupType Automatic -
启动 Docker 服务
Start-Service docker -
验证是否正常运行
docker --version docker run --rm mcr.microsoft.com/windows/nanoserver:ltsc2022 echo "Hello from Windows Container"
✅ 方法二:使用 Docker Desktop(仅限开发/测试)
⚠️ 注意:Docker Desktop 不推荐用于生产服务器,且需要 GUI 支持。Windows Server 2022 Standard 默认是 Server Core 或 Minimal UI,可能无法运行 Docker Desktop。
如果你启用了桌面体验(Desktop Experience),可以尝试:
-
安装 Desktop Experience 功能:
Install-WindowsFeature -Name Server-Gui-Mgmt-Infra, Server-Gui-Shell Restart-Computer -
下载并安装 Docker Desktop for Windows:
https://www.docker.com/products/docker-desktop/
-
打开 Docker Desktop 并启用 Use Windows containers。
✅ 常见问题解决
❌ 错误:The container OS does not match the host OS
- 确保你拉取的是 Windows 容器镜像,例如:
docker run mcr.microsoft.com/windows/nanoserver:ltsc2022 - 不要尝试运行 Linux 容器,除非你启用了 WSL2(但在 Windows Server 上不支持 WSL2)。
❌ 错误:Docker daemon failed to start
- 检查日志:
Get-EventLog -LogName Application -Source Docker -After (Get-Date).AddMinutes(-5) - 可能是配置文件错误或端口冲突。
✅ 设置镜像提速(国内用户推荐)
编辑 Docker 配置文件(C:ProgramDatadockerconfigdaemon.json):
{
"registry-mirrors": [
"https://<your-mirror>.mirror.aliyuncs.com"
]
}
阿里云镜像地址(登录 https://cr.console.aliyun.com 获取专属地址)
然后重启 Docker 服务:
Restart-Service docker
✅ 总结
| 方法 | 适用场景 | 是否推荐 |
|---|---|---|
| 容器功能 + Docker Engine | 生产环境、无 GUI | ✅ 强烈推荐 |
| Docker Desktop | 开发测试、有桌面环境 | ⚠️ 仅测试可用 |
如有更多需求(如 Kubernetes、Portainer 管理界面等),也可以进一步配置。
需要我帮你写一个完整的自动化安装脚本吗?
云服务器