在 Windows Server 2022 Standard 上安装 Docker,可以使用 Microsoft 提供的官方支持方式:通过 Docker Desktop for Windows(不推荐用于服务器)或更适用于服务器环境的 Docker Engine 使用 Windows 容器(via Containers 功能 + Docker-MSFT Provider)。
由于 Windows Server 2022 是服务器操作系统,Docker Desktop 并不推荐用于生产环境。你应该使用原生的 Windows 容器支持 + Docker Engine。
以下是标准步骤,在 Windows Server 2022 Standard 上安装并配置 Docker 引擎:
✅ 步骤 1:启用容器功能
以管理员身份打开 PowerShell 并运行:
# 安装 Containers 功能
Install-WindowsFeature -Name Containers
# 重启服务器
Restart-Computer -Force
✅ 步骤 2:安装 Microsoft 更新源管理器(OneGet)
确保你有包管理工具支持:
# 安装 NuGet 提供者
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
# 注册 Microsoft 软件仓库
Register-PSRepository -Name DockerMsftProvider -SourceLocation https://dockermsft.blob.core.windows.net/docker-acl -InstallationPolicy Trusted
⚠️ 注意:
DockerMsftProvider
已被弃用,但目前仍可临时使用。建议使用手动安装方式(见后文替代方案)。
✅ 步骤 3:安装 Docker Engine
# 安装 Docker 包
Install-Package -Name docker -ProviderName DockerMsftProvider -Force
# 重启服务器以完成安装
Restart-Computer -Force
或者,仅重启服务(不保证完全生效):
Start-Service docker
✅ 步骤 4:验证安装
# 查看 Docker 版本
docker --version
# 查看 Docker 状态
Get-Service docker
# 运行测试容器(Windows 容器)
docker run --rm mcr.microsoft.com/windows/nanoserver:ltsc2022 echo "Hello, Docker on Windows Server 2022!"
✅ (可选)设置 Docker 开机自启
Set-Service docker -StartupType Automatic
✅ 替代方法:手动下载安装(推荐,因 DockerMsftProvider 已逐步弃用)
手动安装 Docker Engine
- 下载最新版 Docker Engine(静态二进制):
# 下载并解压 Docker zip 包(示例版本,请查最新版)
Invoke-WebRequest -Uri "https://download.docker.com/components/engine/windows-server/2022/docker-24.0.7.zip" -OutFile "docker.zip" -UseBasicParsing
# 解压
Expand-Archive -Path "docker.zip" -DestinationPath C: -Force
# 清理
Remove-Item "docker.zip"
- 将
docker
添加到系统路径:
$env:Path += ";C:docker"
[Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:docker", [EnvironmentVariableTarget]::Machine)
- 安装 Docker 为 Windows 服务:
# 创建服务
.dockerd --register-service
# 启动服务
Start-Service docker
💡 建议从 Docker 官方企业版页面 或 Mirantis 获取 Docker EE for Windows 获取长期支持版本。
✅ 配置镜像提速(可选,国内用户)
创建 daemon.json
配置文件:
# 路径:C:ProgramDatadockerconfigdaemon.json
@{
"registry-mirrors" = @("https://<你的镜像提速器>.mirror.aliyuncs.com")
} | ConvertTo-Json | Set-Content C:ProgramDatadockerconfigdaemon.json
然后重启 Docker 服务:
Restart-Service docker
✅ 常见问题排查
问题 | 解决方案 |
---|---|
docker : The term 'docker' is not recognized |
检查 PATH 是否包含 C:docker |
容器无法启动 | 确保宿主机和容器镜像版本兼容(如 ltsc2022 对应 Windows Server 2022) |
DockerMsftProvider 无法注册 |
改用手动安装方式 |
✅ 总结
步骤 | 内容 |
---|---|
1 | 启用 Containers 功能 |
2 | 安装 Docker Engine(推荐手动方式) |
3 | 注册为服务并启动 |
4 | 验证运行 |
🔗 参考文档
- Microsoft Docs: Install Docker EE on Windows Server
- Docker 官方 Windows 安装指南
- Mirantis Docker Engine for Windows
如果你计划运行 Linux 容器,需要启用 WSL2 或使用 Hyper-V 隔离的 Linux VM,但在 Windows Server 上主要支持的是 Windows 容器。
如有具体需求(如 Kubernetes、Portainer 等),也可以继续扩展。
是否需要我提供一键安装脚本?
评论前必须登录!
注册