在云服务器上使用 Windows Server 系统安装 Docker 是可行的,但需要注意以下几点:
✅ 一、前提条件
-
操作系统版本要求
- 支持的 Windows Server 版本:
- Windows Server 2019
- Windows Server 2022
- Windows Server, version 1809(部分功能受限)
- 必须是 64位系统,且支持容器功能。
- 支持的 Windows Server 版本:
-
启用容器功能
- 需要通过 PowerShell 或服务器管理器启用“容器”功能。
-
PowerShell 管理员权限
- 安装过程需以管理员身份运行 PowerShell。
✅ 二、安装步骤(以 Windows Server 2019/2022 为例)
步骤 1:启用容器功能
打开 PowerShell(管理员),运行以下命令:
# 安装容器功能
Install-WindowsFeature -Name Containers
安装完成后,重启服务器:
Restart-Computer -Force
步骤 2:安装 Microsoft 更新源工具(可选但推荐)
# 安装 PackageManagement PowerShell 模块
Install-Module -Name PowerShellGet -Force
Install-Module -Name ContainerImage -Force
步骤 3:安装 Docker 引擎
使用 PowerShell 安装 Docker:
# 从 PowerShell Gallery 安装 DockerMsftProvider
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
# 安装 Docker
Install-Package -Name docker -ProviderName DockerMsftProvider -Force
⚠️ 注意:此方法会自动下载并安装最新稳定版 Docker Engine。
步骤 4:重启服务器(建议)
Restart-Computer -Force
步骤 5:验证安装
重启后,检查 Docker 是否正常运行:
# 查看 Docker 版本
docker --version
# 查看服务状态
Get-Service docker
# 启动 Docker 服务(如果未运行)
Start-Service docker
步骤 6:测试运行一个容器
# 拉取并运行一个 Windows 容器镜像(例如 Server Core)
docker run mcr.microsoft.com/windows/servercore:ltsc2019 echo "Hello from Docker on Windows Server!"
⚠️ 注意:Windows 容器必须与宿主机的 OS 版本兼容(如 LTSC2019 镜像只能在相同或相近版本运行)。
✅ 三、配置 Docker(可选)
设置开机自启
Set-Service docker -StartupType Automatic
配置镜像提速(国内用户推荐)
编辑或创建 Docker 配置文件:
路径:C:ProgramDatadockerconfigdaemon.json
内容示例(使用阿里云镜像提速):
{
"registry-mirrors": ["https://<你的提速器地址>.mirror.aliyuncs.com"]
}
获取提速地址:登录 阿里云容器镜像服务 → 镜像工具 → 镜像提速器
修改后重启 Docker:
Restart-Service docker
❌ 常见问题与注意事项
问题 | 解决方案 |
---|---|
Install-Package : No match was found |
确保网络通畅,或尝试更新 PowerShellGet 模块 |
容器无法启动 | 检查宿主机和镜像的 Windows 版本是否匹配(如 build 号) |
Docker 服务无法启动 | 检查是否已启用 Hyper-V 和 Containers 功能 |
不支持 Linux 容器(默认) | Windows Server 默认只支持 Windows 容器。切换需启用 WSL2 和 Hyper-V(复杂,不推荐) |
✅ 四、Docker + Windows 容器适用场景
- 托管 .NET Framework/.NET Core 应用
- 迁移传统 Windows 应用到容器化环境
- 微服务架构中 Windows 组件的部署
🔚 总结
在 Windows Server 上安装 Docker 是官方支持的,主要用于运行 Windows 容器。虽然不如 Linux 上的 Docker 流畅,但在企业级 Windows 环境中仍有重要用途。
📌 推荐:如非必须运行 Windows 容器,建议使用 Linux 云服务器 + Docker,体验更佳、生态更丰富。
如需进一步帮助(如部署 ASP.NET 应用、使用 Docker Compose),欢迎继续提问!