在 Windows Server 2019 Datacenter 上安装 Docker 是完全可行的,但需要注意的是,Windows Server 2019 原生支持的是基于 Windows 容器的 Docker(即 Docker Engine for Windows),而不是 Linux 容器(除非你启用了 Hyper-V 和 LCOW,即 Linux Containers on Windows)。
以下是详细步骤,指导你在 Windows Server 2019 Datacenter 上安装和配置 Docker。
✅ 第一步:准备工作
1. 确保系统更新
确保你的 Windows Server 2019 已安装最新的更新补丁:
Install-Module -Name PSWindowsUpdate -Force
Install-WindowsUpdate -AcceptAll -AutoReboot
2. 启用容器功能
以管理员身份运行 PowerShell,执行以下命令启用容器功能:
Install-WindowsFeature -Name Containers
安装完成后,必须重启服务器:
Restart-Computer -Force
✅ 第二步:安装 Docker Engine
微软与 Docker 合作提供了适用于 Windows 的 Docker 官方二进制文件。
方法一:使用 PowerShell 脚本安装(推荐)
- 打开 管理员权限的 PowerShell
- 运行以下命令下载并安装 Docker-Microsoft PackageManagement Provider:
# 安装 NuGet 提供程序
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
# 注册 Docker 软件源
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
# 安装 Docker
Install-Package -Name docker -ProviderName DockerMsftProvider -Force
- 安装完成后重启系统:
Restart-Computer -Force
方法二:手动下载安装(可选)
访问微软官方 Docker 发行页面(已归档,但仍可用)或使用以下命令手动下载:
# 下载最新版 Docker
Invoke-WebRequest "https://download.docker.com/components/engine/windows-server/2019/docker-20.10.17.zip" -OutFile "docker.zip" -UseBasicParsing
# 解压
Expand-Archive docker.zip -DestinationPath $env:ProgramFiles
# 将 docker 添加到系统路径
[Environment]::SetEnvironmentVariable("Path", $env:Path + ";" + "$env:ProgramFilesdocker", [EnvironmentVariableTarget]::Machine)
# 重启 PowerShell 或运行:
$env:Path += ";$env:ProgramFilesdocker"
# 安装 Docker 服务
dockerd --register-service
✅ 第三步:启动 Docker 服务
Start-Service docker
设置开机自启:
Set-Service docker -StartupType Automatic
✅ 第四步:验证安装
运行以下命令测试:
docker --version
输出示例:
Docker version 20.10.17, build 100c701
运行一个 Windows 容器测试:
docker run mcr.microsoft.com/windows/nanoserver:ltsc2019 echo "Hello from Windows Container!"
⚠️ 注意:你需要使用与主机 OS 版本兼容的镜像(如
ltsc2019)。
✅ (可选)启用 Linux 容器支持(LCOW)
如果你还想运行 Linux 容器,需要启用 LCOW(Linux Containers on Windows)。
- 启用 Hyper-V(即使在 Server Core 上):
Install-WindowsFeature -Name Hyper-V -IncludeManagementTools -Restart
- 启用 LCOW 支持(在注册表中启用):
# 创建目录
md C:ProgramDatadockerconfig
# 启用 LCOW
"{`"experimental`":true}" | Out-File C:ProgramDatadockerconfigdaemon.json
- 重启 Docker 服务:
Restart-Service docker
- 拉取 Linux 镜像测试:
docker run alpine echo "Hello from Linux container!"
⚠️ 注意:LCOW 性能较差,微软已不再积极维护。生产环境建议使用 WSL2 或 Linux 主机运行 Linux 容器。
✅ 常见问题排查
| 问题 | 解决方案 |
|---|---|
docker: command not found |
确保 C:Program Filesdocker 已加入系统 PATH |
| 容器无法启动 | 检查镜像是否与主机版本兼容(如 ltsc2019) |
| LCOW 失败 | 确保 Hyper-V 已启用,并检查虚拟化支持 |
| 权限错误 | 使用管理员权限运行 PowerShell |
✅ 总结
在 Windows Server 2019 Datacenter 上安装 Docker 的关键步骤:
- 安装
Containers功能 - 使用
DockerMsftProvider安装 Docker - 重启并启动
docker服务 - 运行测试容器验证
- (可选)启用 LCOW 支持 Linux 容器
🔗 参考资料
- Microsoft Docs: Install Docker EE on Windows Server
- Docker 官方文档(Windows): https://docs.docker.com/engine/installation/windows/docker-ee/
如果你计划大规模使用容器,建议考虑迁移到 Windows Server 2022 + Docker + Kubernetes 或使用 Azure Container Instances / AKS 等云原生方案。
如有具体需求(如部署 .NET 应用、使用 Docker Compose 等),欢迎继续提问!
云服务器