在 Windows Server 2019 Datacenter 上安装 Docker(更准确地说是 Docker Engine 或 Docker Desktop for Windows Server)是可行的,但需要注意以下几点:
⚠️ 重要提示:Docker 官方从 2020 年起已不再推荐在 Windows Server 上直接使用传统的 Docker Engine for Windows。推荐使用 Microsoft 的容器功能,通过 Windows Server 的容器功能 + Docker EE(Enterprise Edition)或 Moby 来实现。
不过,仍然可以通过以下方式在 Windows Server 2019 Datacenter 上安装和运行 Docker。
✅ 方法一:使用 PowerShell 安装 Docker Engine(推荐方式)
这是最常用、官方支持的方式,通过 PowerShell 安装 Docker 引擎。
步骤 1:启用容器功能
以管理员身份运行 PowerShell:
# 安装容器功能
Install-WindowsFeature -Name Containers
# 重启服务器
Restart-Computer -Force
步骤 2:安装 Microsoft 的 Docker Provider(用于管理 Docker)
# 安装 NuGet 提供程序
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
# 注册 PowerShell 软件仓库(如果尚未注册)
Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
# 安装 DockerProvider
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
步骤 3:安装 Docker Engine
# 使用 DockerMsftProvider 安装最新版 Docker
Install-Package -Name docker -ProviderName DockerMsftProvider -Force
这会从 Microsoft 的源下载并安装 Docker 引擎。
步骤 4:重启服务器
Restart-Computer -Force
步骤 5:验证安装
# 查看 Docker 版本
docker --version
# 查看 Docker 服务状态
Get-Service docker
# 查看系统信息(包括容器支持)
docker info
✅ 方法二:手动下载 Docker 二进制文件(可选)
如果你无法使用 PowerShell 安装,可以手动安装:
-
下载 Docker 二进制文件:
- 地址:https://download.docker.com/components/engine/windows-server/index.html
-
或使用此命令下载(PowerShell):
# 下载 Docker zip 包 Invoke-WebRequest -Uri "https://download.docker.com/components/engine/windows-server/20.10.17/docker-20.10.17.zip" -OutFile "docker.zip" -UseBasicParsing # 解压 Expand-Archive -Path "docker.zip" -DestinationPath "C:" -Force # 将 docker 添加到系统路径 $env:Path += ";C:docker"
-
安装为 Windows 服务:
.dockerd --register-service Start-Service docker
✅ 方法三:使用 Docker Desktop(不推荐用于 Server)
❌ Docker Desktop for Windows 不支持 Windows Server 2019,仅支持 Windows 10/11 Pro 或 Enterprise。
所以 不能在 Windows Server 2019 上安装 Docker Desktop。
✅ 运行第一个容器(测试)
# 拉取 Windows Nano Server 镜像(需匹配主机版本)
docker pull mcr.microsoft.com/windows/nanoserver:ltsc2019
# 运行一个简单容器
docker run mcr.microsoft.com/windows/nanoserver:ltsc2019 echo "Hello from Docker on Windows Server 2019!"
⚠️ 注意:容器镜像版本必须与主机 OS 版本兼容(如 build 号匹配)。可通过
systeminfo | findstr /B /C:"OS Version"查看系统版本。
? 常见问题与建议
| 问题 | 解决方案 |
|---|---|
Docker service not starting |
检查是否启用 Hyper-V 和 Containers 功能 |
Image compatibility error |
确保拉取的镜像与 Windows Server 2019(LTSC 2019)兼容 |
No network connectivity in container |
安装 LCOW 或配置 HNS(Host Network Service) |
| 想运行 Linux 容器? | 需启用 LCOW(Linux Containers on Windows),但性能较差,建议使用 WSL2(仅支持 Win10/11) |
✅ 推荐方案(现代替代)
如果你希望更好的容器体验,建议:
- 使用 Windows 10/11 + WSL2 + Docker Desktop(开发环境)
- 或使用 Windows Server + Kubernetes + Containerd(生产环境)
- 或迁移到 Azure Container Instances / AKS 等云方案
总结
在 Windows Server 2019 Datacenter 上安装 Docker 的推荐方式是:
Install-WindowsFeature Containers
Install-Module DockerMsftProvider -Force
Install-Package Docker -ProviderName DockerMsftProvider -Force
Restart-Computer
安装完成后即可使用 docker 命令管理 Windows 容器。
如需进一步配置(如远程管理、TLS、Swarm、Kubernetes),可继续扩展。需要我提供 daemon.json 配置或远程访问设置吗?
CDNK博客