走啊走
加油

windows server 2019不能安装docker?

服务器价格表

Windows Server 2019 可以安装 Docker,但有一些限制和注意事项。你可能遇到“不能安装”的情况,通常是因为配置不当、版本不兼容或使用了错误的安装方式。

以下是详细说明:


✅ Windows Server 2019 支持 Docker 的前提条件

  1. 必须是 Windows Server 2019(含桌面体验)

    • 安装 Docker 需要图形界面组件(如 PowerShell、某些服务等),推荐使用「带桌面体验」的版本。
    • 如果是 Server Core 版本,也可以运行容器,但安装过程更复杂。
  2. 启用容器功能(Containers feature)
    在安装 Docker 前,必须先启用 Windows 的“容器”可选功能。

    Install-WindowsFeature -Name Containers
  3. 系统更新到较新的补丁版本

    • 某些旧版本的 Windows Server 2019 存在兼容性问题。
    • 推荐安装最新的累积更新(如 2021 年以后的版本)。
  4. PowerShell 5.1 或更高版本


✅ 正确安装 Docker 的方法(适用于 Windows Server 2019)

Docker 官方不再直接提供适用于 Windows Server 的独立 Docker Desktop 安装包(尤其是非企业版)。但你可以通过以下方式安装:

方法一:使用 Microsoft 提供的 Docker-MSFT Provider(推荐)

这是最稳定、官方支持的方式。

# 1. 安装 NuGet 包管理器(如果未安装)
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force

# 2. 注册 Microsoft 的 Docker Provider 仓库
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force

# 3. 安装 Docker 引擎
Install-Package -Name docker -ProviderName DockerMsftProvider -Force

# 4. 重启计算机
Restart-Computer -Force

安装完成后,Docker 服务会自动启动,你可以用 docker --versiondocker run hello-world 测试。


方法二:手动下载并安装最新版 Docker Engine

Microsoft 和 Docker 合作维护了一个适用于 Windows 的 Docker EE(Enterprise Edition),也可用于生产环境。

步骤:

  1. 访问 https://download.docker.com/components/engine/windows-server/
  2. 下载对应版本的 .zip 文件
  3. 解压并安装到系统路径
  4. 注册为服务

示例:

# 解压后进入目录
.dockerd --register-service
Start-Service docker

⚠️ 常见问题与解决

问题 原因 解决方案
Install-Module DockerMsftProvider 失败 网络或 TLS 设置问题 执行 [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
无法连接到 Docker 守护进程 服务未启动 Start-Service docker
docker 命令找不到 环境变量未设置 C:Program Filesdocker 加入 PATH
不支持 Linux 容器 Windows Server 只原生支持 Windows 容器 如需 Linux 容器,需配合 WSL2 或 Hyper-V 虚拟机

💡 注意:Windows Server 2019 不支持 WSL2,因此不能直接运行 Linux 容器。只能运行 Windows 容器。如需 Linux 容器,建议使用虚拟机或升级到 Windows Server 2022 + Hyper-V。


❌ 不推荐的做法

  • 直接下载 Docker Desktop for Windows 并尝试在 Server 上安装 —— 这通常是无效的,且不受支持。
  • 使用过时的脚本(如 get-docker.com)安装 —— 可能导致兼容性问题。

✅ 验证安装是否成功

docker version
docker run mcr.microsoft.com/windows/nanoserver:ltsc2019 echo "Hello from Windows Container"

总结

Windows Server 2019 可以安装 Docker,但必须:

  • 使用正确的安装方式(推荐 DockerMsftProvider
  • 启用容器功能
  • 安装最新系统补丁
  • 仅运行 Windows 容器(不支持 WSL2)

如果你遵循上述步骤仍然失败,请提供具体的错误信息(如 PowerShell 报错内容),我可以进一步帮你排查。

需要我提供一键安装脚本吗?