走啊走
加油

windwos server 2019 datacenter安装docker?

服务器价格表

Windows Server 2019 Datacenter 上安装 Docker 是完全可行的,但需要注意的是:Docker 在 Windows 上运行的是 Windows 容器(Windows Containers),而不是 Linux 容器。此外,Docker 在 Windows Server 上主要通过 Docker EngineDocker Desktop(后者更适用于开发环境,不推荐用于生产服务器)来部署。

由于 Windows Server 2019 是服务器操作系统,推荐使用 原生 Docker Engine for Windows Server,而不是 Docker Desktop。


✅ 步骤:在 Windows Server 2019 Datacenter 安装 Docker Engine

✅ 前提条件

  • 系统:Windows Server 2019 Datacenter(建议安装最新更新)
  • PowerShell(以管理员身份运行)
  • 网络连接(用于下载模块和 Docker)

第一步:启用容器功能

  1. 打开 PowerShell(以管理员身份运行)

  2. 安装 Containers 功能:

Install-WindowsFeature -Name Containers
  1. 安装完成后,重启服务器
Restart-Computer -Force

第二步:安装 Microsoft 软件包源(OneGet)

用于从 PowerShell 安装 DockerProvider。

# 安装 NuGet 提供程序
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force

# 安装 Microsoft Update(可选)
Install-PackageProvider -Name Microsoft.Update -Force

# 注册 Microsoft PowerShell Gallery(默认已注册)
Register-PSRepository -Default

第三步:安装 DockerProvider

Install-Module -Name DockerMsftProvider -Repository PSGallery -Force

如果提示信任 PSGallery,输入 A(Yes to All)。


第四步:安装 Docker Engine

Install-Package -Name docker -ProviderName DockerMsftProvider -Force

这个命令会自动下载并安装最新稳定版的 Docker Engine。

⚠️ 注意:下载可能较慢,取决于网络。你可以使用 -Verbose 参数查看进度。


第五步:重启服务器(建议)

Restart-Computer -Force

第六步:验证安装

重启后,再次以管理员身份打开 PowerShell:

# 检查 Docker 版本
docker --version

# 查看 Docker 服务状态
Get-Service docker

# 启动 Docker 服务(如果未运行)
Start-Service docker

第七步:测试运行一个 Windows 容器

docker run --rm mcr.microsoft.com/windows/nanoserver:1809 echo "Hello from Windows Container!"

注意:镜像标签应与主机系统版本兼容。Windows Server 2019 内核版本为 10.0.17763(对应 1809),请使用兼容镜像。


✅ 可选:设置 Docker 开机自启

Set-Service docker -StartupType Automatic

❌ 不推荐:Docker Desktop on Windows Server

Docker Desktop 不支持在 Windows Server 上运行(即使技术上可以绕过限制),因为它主要面向开发人员,且需要 WSL2 和 Hyper-V 图形组件,不适合生产环境。


🔧 常见问题

1. 镜像兼容性问题

Windows 容器必须与主机内核版本匹配。例如:

  • Windows Server 2019 = 版本 1809(10.0.17763)
  • 使用镜像如:mcr.microsoft.com/windows/nanoserver:1809ltsc2019

2. 网络问题

默认使用 nat 网络。可使用以下命令查看:

docker network ls

3. 存储驱动

Windows 容器使用 windowsfilter 驱动,无需额外配置。


✅ 推荐:使用 Moby / Containerd(现代替代方案)

微软和 Docker 社区现在更推荐使用 Moby 或直接集成 containerd 与 Kubernetes(如 AKS-Engine、K3s on Windows)。

但如果你只是需要简单的容器运行时,Docker Engine 仍然可用。


总结

步骤 命令
启用容器功能 Install-WindowsFeature Containers
安装 DockerProvider Install-Module DockerMsftProvider -Force
安装 Docker Install-Package docker -ProviderName DockerMsftProvider -Force
重启 Restart-Computer
验证 docker --version

如需后续管理,可配合 PowerShell、Portainer、或 Kubernetes 使用。

如有具体用途(如运行 .NET 应用、部署服务等),欢迎继续提问!