Windows Server 2019能安装docker和docker-compose?

服务器

是的,Windows Server 2019 可以安装 Docker 和 Docker Compose,但有一些前提条件和限制需要注意。


✅ 支持情况概述:

组件 是否支持 说明
Docker(Moby) ✅ 是 支持通过 Microsoft 提供的容器功能安装
Docker Compose ✅ 是 支持,可通过 PowerShell 安装或使用独立二进制文件

一、安装 Docker on Windows Server 2019

方法 1:使用 PowerShell 安装(推荐)

  1. 以管理员身份运行 PowerShell

  2. 安装容器功能

    Install-WindowsFeature -Name Containers
  3. 重启服务器

    Restart-Computer -Force
  4. 安装 Docker Engine
    使用 Microsoft 提供的脚本从 PSGallery 安装:

    # 安装并导入 PowerShell 包管理模块(如果尚未安装)
    Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
    Install-Package -Name docker -ProviderName DockerMsftProvider -Force
  5. 再次重启系统

    Restart-Computer -Force
  6. 验证安装

    docker --version
    docker run hello-world:nanoserver

    注意:只能运行基于 Windows 容器的镜像(如 nanoserver, windowsservercore),不能运行 Linux 容器(除非启用 Hyper-V 和特定配置,且性能较差)。


二、安装 Docker Compose

Docker Compose 可以通过以下方式安装:

方法 1:使用 PowerShell 安装最新版本(推荐)

# 下载最新版 docker-compose(替换版本号为最新)
Invoke-WebRequest "https://github.com/docker/compose/releases/download/v2.27.0/docker-compose-windows-x86_64.exe" `
  -UseBasicParsing -OutFile $env:ProgramFilesDockerdocker-compose.exe

建议去 GitHub Releases 找最新的 docker-compose-windows-x86_64.exe 版本。

方法 2:使用 PowerShell 模块(旧方法,不推荐)

Install-Module -Name DockerCompose -Repository PSGallery -Force

此模块已过时,建议直接下载二进制文件。

验证 Docker Compose

docker-compose --version

三、注意事项与限制

项目 说明
仅支持 Windows 容器 不原生支持 Linux 容器。虽然可通过 WSL2 或 Hyper-V 实现,但 Windows Server 2019 默认不包含 WSL2。
内核版本兼容性 运行的容器必须与主机 Windows 版本兼容(例如,build 17763 的 Server 2019 对应相同版本的 base 镜像)。
性能与资源开销 Windows 容器比 Linux 容器更大更重,启动慢,占用内存多。
生产环境建议 若主要运行 Linux 应用,建议使用 Linux 服务器部署 Docker。Windows Server 更适合运行 .NET Framework / .NET Core Windows 应用。

四、常见问题解决

  • 错误:The container operating system does not match the host operating system
    → 确保你拉取的是 Windows 镜像(如 mcr.microsoft.com/windows/nanoserver),并且 Docker 设置为运行 Windows 容器。

  • 切换容器类型(GUI 工具才有,Server Core 无此选项)
    Windows Server Core 通常默认只支持 Windows 容器,无法切换。

  • PowerShell 报错无法安装模块
    确保执行策略允许:

    Set-ExecutionPolicy RemoteSigned -Force

✅ 总结

可以!Windows Server 2019 支持安装 Docker 和 Docker Compose,适用于运行 Windows 容器应用(如 ASP.NET、IIS、.NET 后端服务等)。但对于 Linux 容器,强烈建议使用 Linux 主机或升级到 Windows Server 2022 + WSL2 支持。


如果你有具体的应用场景(比如部署某个服务),欢迎提供,我可以给出更详细的部署建议。

未经允许不得转载:CDNK博客 » Windows Server 2019能安装docker和docker-compose?