奋斗
努力

Windows Server 2022 Standard安装docker?

云计算

在 Windows Server 2022 Standard 上安装 Docker,必须使用 "Docker Desktop for Windows"(包含 WSL 2 后端)或者通过 Docker Engine for Windows (Server Core) 进行安装。

由于你使用的是 Windows Server 2022 Standard(通常用于生产环境),微软官方推荐且最稳定的方式是使用 Docker Engine(命令行工具 + 后台服务),而不是带有图形界面的 Docker Desktop。

以下是两种主流方案的详细步骤:


方案一:使用 Docker Engine(推荐用于生产环境/服务器)

这是最轻量、性能最好的方式,适合没有图形界面或需要长期运行的服务器场景。它基于 WSL 2Hyper-V 容器化技术。

1. 前置检查与准备

确保你的系统满足以下条件:

  • 操作系统版本:Windows Server 2022 Standard (Build 20348+)。
  • 虚拟化支持:BIOS 中已开启 VT-x/AMD-V,且 Hyper-V 功能已启用。
  • 更新系统:运行 Get-WindowsFeature 确认功能状态。

2. 启用必要的 Windows 功能

管理员身份 打开 PowerShell,依次运行以下命令来启用容器和 Hyper-V 支持:

# 启用容器功能
Enable-WindowsOptionalFeature -Online -FeatureName Containers -All

# 启用 Hyper-V 功能(如果尚未启用)
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

# 重启系统以应用更改
Restart-Computer

3. 安装 Docker Engine

Docker 官方提供了自动化的安装脚本,这是最简便的方法。

  1. 下载并运行安装脚本(以管理员身份运行 PowerShell):

    Invoke-WebRequest -UseBasicParsing -Uri https://raw.githubusercontent.com/microsoft/wsl-docker/main/scripts/docker-install.ps1 -OutFile docker-install.ps1
    # 注意:上述链接可能随时间变化,建议直接访问 GitHub 获取最新脚本,或使用下方的手动安装包方式。

    更稳妥的手动安装步骤(推荐):

    • 访问 Docker Hub 或 Microsoft Learn 文档。
    • 下载最新的 Docker MSI 安装包 (例如 docker-24.0.x.msi)。
    • 双击运行 .msi 文件,按照向导安装。
    • 关键选项:在安装过程中,选择 "Install the containerd runtime""Allow non-admin users to use Docker" (可选)。

4. 配置 WSL 2 后端(强烈建议)

为了获得更好的性能和兼容性,建议将 Docker 的默认运行时从 Hyper-V 切换到 WSL 2。

  1. 安装 WSL 2 内核更新(如果尚未安装):
    wsl --install
  2. 设置默认发行版为 WSL 2:
    wsl --set-default-version 2
  3. 重启 Docker 服务后,Docker 会自动检测并使用 WSL 2。

5. 验证安装

安装完成后,重启电脑,然后运行:

docker version
docker run hello-world

如果看到 "Hello from Docker!" 字样,说明安装成功。


方案二:使用 Docker Desktop for Windows(适合开发/测试环境)

如果你需要在服务器上保留图形界面(GUI),并且像普通 Windows 桌面一样管理容器,可以使用 Docker Desktop。

注意:Docker Desktop 对资源消耗较大,且在某些严格的许可协议下,仅允许用于个人学习、开发或演示,不建议用于核心生产业务。

  1. 下载:前往 Docker 官网下载适用于 Windows 的 Docker Desktop 安装包。
  2. 安装:运行安装程序。
    • 它会提示你启用 WSL 2Hyper-V
    • 安装过程会自动配置这些组件。
  3. 启动:安装完成后,点击桌面上的 Docker 图标启动服务。
  4. 验证:打开 PowerShell 输入 docker versiondocker run hello-world

常见问题与注意事项

  1. 镜像选择

    • 在 Windows Server 上,默认拉取的是 Windows 容器镜像 (mcr.microsoft.com/windows/...)。
    • 如果你需要运行 Linux 容器(如 Nginx, MySQL, Node.js 等),你需要配置 Docker 使用 WSL 2 后端,或者在 PowerShell 中指定 --platform linux
    • 示例:docker run --platform linux -d nginx
  2. 网络问题

    • Windows Server 的防火墙可能会阻止容器通信。如果无法联网,请检查防火墙规则,允许 docker-proxynat 相关的端口。
  3. 权限问题

    • 默认情况下,只有 Administrators 组可以运行 Docker 命令。如果需要非管理员用户运行,可以在安装时勾选相关选项,或在安装后运行:
      New-ItemProperty -Path "HKLM:SOFTWAREMicrosoftWindows NTCurrentVersionDocker" -Name "EnableNonAdminAccess" -Value 1 -PropertyType DWORD -Force
      Restart-Service Docker
  4. Standard vs Datacenter

    • 对于大多数通用容器场景,Standard 版完全足够。只有在需要使用 Shielded VMs 或特定的 Host Guardian Service 功能时,才必须使用 Datacenter 版。

总结

  • 生产环境/纯命令行服务器:请选择 方案一 (Docker Engine),配合 WSL 2 后端,稳定且资源占用低。
  • 开发调试/带 GUI 环境:可以选择 方案二 (Docker Desktop),但需注意授权合规性。
未经允许不得转载:云服务器 » Windows Server 2022 Standard安装docker?