windows server2022安装docker和docker-compose?

在 Windows Server 2022 上安装 Docker 和 Docker Compose,主要依赖 Docker Desktop for Windows(推荐方式)或手动安装 Docker Engine

由于 Windows Server 2022 默认是“桌面体验”(Desktop Experience)模式还是“服务器核心”(Server Core)模式会影响安装步骤,以下提供两种最通用的方案。

⚠️ 前置检查(必须执行)

无论选择哪种方案,请先确保系统满足以下条件:

  1. 虚拟化已开启:在 BIOS/UEFI 中开启 VT-x/AMD-V,并在 Hyper-V 管理器中确认虚拟机支持嵌套虚拟化。
  2. 启用功能:以管理员身份运行 PowerShell,执行以下命令并重启服务器:
    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
    Enable-WindowsOptionalFeature -Online -FeatureName Containers
    Restart-Computer
  3. 操作系统版本:建议使用 Windows Server 2022 DatacenterStandard 的完整桌面版(Desktop Experience)。如果是 Server Core,Docker Desktop 无法直接安装,需使用 dockerd 命令行模式(较复杂,下文重点介绍桌面版)。

方案一:使用 Docker Desktop(推荐,最简单)

这是最便捷的方式,它会自动配置 WSL2 后端,并包含 Docker Compose。

1. 下载与安装

  1. 访问 Docker Desktop 下载页面。
  2. 下载适用于 Windows 的安装程序(注意:Docker Desktop 有免费许可证限制,仅限个人开发、教育或非商业用途;企业商用需购买 License)。
  3. 运行安装程序,按照向导完成安装。
    • 关键选项:在安装过程中,务必勾选 "Use WSL 2 instead of Hyper-V"(如果可用),这能显著提升性能。
  4. 安装完成后重启电脑。

2. 验证安装

打开 PowerShell,输入以下命令:

docker --version
docker compose version

注:新版 Docker Desktop 已将 docker-compose 集成到 docker compose 命令中(带空格),不再需要单独的 docker-compose.exe

3. 配置镜像源(国内用户必做)

由于网络原因,拉取镜像可能失败。建议修改配置文件:

  1. 右键点击任务栏 Docker 图标 -> Settings (设置)
  2. 进入 Resources -> Docker Engine
  3. 在 JSON 配置文件中添加 registry-mirrors
    {
      "registry-mirrors": [
        "https://docker.m.daocloud.io",
        "https://huecker.io",
        "https://dockerhub.timeweb.cloud"
      ]
    }
  4. 保存后点击 Apply & Restart

方案二:仅安装 Docker Engine(适合 Server Core 或无 GUI 环境)

如果你使用的是 Server Core 版本,或者不想安装庞大的 Docker Desktop 图形界面,可以只安装 Docker Engine 和 Compose 插件。

1. 下载安装包

访问 Docker Hub 的官方发布页,找到对应版本的 MSI 安装包:

  • Docker Engine: 下载 docker-<version>.msi (例如 docker-24.0.x.msi)
  • Docker Compose Plugin: 下载 docker-compose-plugin-<version>.msi (注意:Compose V2 是作为插件安装的)

提示:请确保下载的 Docker Engine 版本与你的 Windows Server 2022 内核兼容(通常最新版都支持)。

2. 安装 Docker Engine

以管理员身份运行 CMD 或 PowerShell,执行:

# 假设文件在当前目录
.docker-24.0.x.msi /quiet /norestart

安装完成后,服务会自动启动。

3. 安装 Docker Compose 插件

同样以管理员身份运行:

.docker-compose-plugin-2.x.x.msi /quiet /norestart

4. 验证安装

docker --version
docker compose version

此时你应该能看到两个版本号。


常见问题排查

  1. 报错 "The container operating system does not match the host operating system"

    • 原因:Windows Server 2022 默认开启了容器化隔离,但有时需要切换容器类型。
    • 解决:在 Docker Desktop 设置中,确保选择了 Linux 容器(WSL2)或 Windows 容器。如果在 Server Core 下,确保你拉取的镜像架构匹配(例如 mcr.microsoft.com/windows/servercore:ltsc2022)。
  2. 权限问题

    • 如果非管理员账户无法运行 Docker,需要将当前用户添加到 docker-users 组:
      net localgroup docker-users <用户名> /add
  3. License 警告

    • 如果使用 Docker Desktop 进行商业生产环境部署且公司规模超过 250 人或年营收超过 1 亿美元,会收到许可警告。此时建议切换到 方案二(Docker Engine) 或使用 Kubernetes。

总结

  • 普通桌面版服务器:直接使用 Docker Desktop,一键安装,自带 Compose,维护成本最低。
  • Server Core / 生产环境精简:使用 Docker Engine + Compose Plugin 的 MSI 包,无图形界面依赖,资源占用更小。
未经允许不得转载:CLOUD云枢 » windows server2022安装docker和docker-compose?