奋斗
努力

windows server 2022如何使用docker?

云计算

Windows Server 2022 上使用 Docker,你可以选择以下两种主要方式:

  1. Docker Desktop for Windows Server(不推荐用于生产)
  2. 直接安装 Docker Engine(推荐用于服务器环境)

由于 Windows Server 2022 是一个服务器操作系统,通常建议使用 原生 Docker Engine(通过 Microsoft 的容器功能支持),而不是 Docker Desktop。以下是详细步骤。


✅ 推荐方法:在 Windows Server 2022 上安装 Docker Engine

步骤 1:启用容器功能

以管理员身份打开 PowerShell 并运行:

# 安装容器功能
Install-WindowsFeature -Name Containers

# 重启服务器
Restart-Computer -Force

这一步会安装 Windows 容器运行时所需的核心组件。


步骤 2:安装 Microsoft 提供的 Docker Provider(OneGet)

Microsoft 提供了一个 PowerShell 模块来简化 Docker 安装。

# 安装并导入包管理模块
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force

# 使用该提供者安装 Docker
Install-Package -Name docker -ProviderName DockerMsftProvider -Force

第一次执行可能会提示你信任 PSGallery,输入 A(Yes to All)即可。


步骤 3:重启系统

Restart-Computer -Force

确保 Docker 服务正确注册并启动。


步骤 4:验证安装

重启后,检查 Docker 版本和服务状态:

docker --version

查看服务是否运行:

Get-Service docker

如果服务未运行,可以手动启动:

Start-Service docker

步骤 5:测试运行一个容器

docker run hello-world:nanoserver

或运行 IIS 示例容器:

docker run -d -p 80:80 mcr.microsoft.com/windows/servercore/iis:windowsservercore-ltsc2022

访问 http://localhost 或服务器 IP 应能看到 IIS 默认页面。


🐳 支持的镜像类型

Windows Server 2022 支持以下容器:

  • Windows Server Core 镜像(如 servercore, iis, .NET Framework
  • Nano Server 镜像(轻量级,适用于微服务)

注意:必须使用与主机版本兼容的镜像(建议使用 ltsc2022 标签)。

例如:

mcr.microsoft.com/windows/servercore:ltsc2022
mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2022

🔧 可选:配置 Docker 守护进程(daemon.json)

编辑配置文件(路径:C:ProgramDatadockerconfigdaemon.json):

{
  "hosts": ["tcp://0.0.0.0:2375", "npipe://"],
  "exec-opts": ["isolation=process"]
}

注意:开放 TCP 端口需确保网络安全!

然后重启 Docker 服务:

Restart-Service docker

❌ 不推荐:Docker Desktop on Windows Server

Docker Desktop 主要面向开发人员桌面环境(Windows 10/11 Pro),不支持也不推荐用于 Windows Server 生产环境。它依赖 WSL2 和 Hyper-V GUI 组件,在服务器上可能无法正常运行或违反许可协议。


⚠️ 常见问题与注意事项

问题 解决方案
镜像拉取失败 检查网络、使用完整镜像标签(如 ltsc2022
版本不兼容 Windows 容器必须与宿主 OS 版本匹配
权限不足 使用管理员权限运行 PowerShell
防火墙阻止端口 开放所需端口(如 80, 443, 2375)

✅ 总结

Windows Server 2022 上使用 Docker 的最佳实践是:

  1. 启用 Containers 功能
  2. 使用 DockerMsftProvider 安装 Docker Engine
  3. 重启并验证
  4. 运行兼容的 Windows 容器镜像(ltsc2022)

这样可以获得稳定、高效的容器运行环境,适合生产部署。


如需进一步集成 Kubernetes,可考虑使用 AKS-HCIRancher + RKE2 等企业级方案。

需要我帮你写一个自动化安装脚本吗?

未经允许不得转载:云服务器 » windows server 2022如何使用docker?