windows server安装docker和docker-compose?

Windows Server 上安装 Docker 和 Docker Compose 与在 Windows 10/11 上略有不同。以下是针对 Windows Server 2016 / 2019 / 2022 的详细步骤,支持安装 Docker Engine(基于 Windows 容器)和 Docker Compose。


✅ 前提条件

  • 操作系统:Windows Server 2016、2019 或 2022(建议使用 2019 或 2022)
  • 已启用 容器功能(Containers feature)
  • PowerShell 以管理员身份运行
  • 网络可访问 PowerShell Gallery 和 GitHub

🛠️ 第一步:启用容器功能

  1. 打开 PowerShell(以管理员身份运行)

  2. 启用容器功能:

Install-WindowsFeature -Name Containers
  1. 重启服务器:
Restart-Computer -Force

🐳 第二步:安装 Docker Engine

方法一:使用 Microsoft 提供的脚本(推荐)

  1. 下载并安装 DockerMsftProvider:
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
  1. 安装 Docker:
Install-Package -Name docker -ProviderName DockerMsftProvider -Force
  1. 重启服务器以完成安装:
Restart-Computer -Force
  1. 验证 Docker 是否安装成功:
docker --version

你应该看到类似输出:

Docker version 20.10.xx, build xxxxx
  1. 查看服务状态:
Get-Service docker

如果未运行,启动它:

Start-Service docker

🔧 第三步:安装 Docker Compose

注意:Docker Compose v2 是一个 CLI 插件,不再是独立的 docker-compose.exe

推荐方式:手动下载最新版 docker-compose 可执行文件

  1. 创建插件目录(如果不存在):
$dir = "$env:ProgramDataDockercli-plugins"
if (!(Test-Path $dir)) { New-Item $dir -ItemType Directory }
  1. 下载最新版 docker-compose(替换版本号为最新,如 v2.26.1):
Invoke-WebRequest `
  -Uri "https://github.com/docker/compose/releases/download/v2.26.1/docker-compose-windows-x86_64.exe" `
  -OutFile "$env:ProgramDataDockercli-pluginsdocker-compose.exe"

✅ 你可以在 GitHub Releases 页面找到最新版本。

  1. 验证安装:
docker compose version

注意:命令是 docker compose(两个单词),不是 docker-compose(旧版单命令)。


✅ 测试运行一个 Windows 容器

docker run --rm mcr.microsoft.com/windows/nanoserver:ltsc2022 echo "Hello from Windows Container!"

首次运行会较慢,因为需要下载镜像。


⚙️ 可选配置

设置 Docker 开机自启:

Set-Service docker -StartupType Automatic

使用 Linux 容器?

⚠️ Windows Server 不原生支持 Linux 容器(WSL2 仅适用于 Windows 10/11 Pro/Enterprise)。
若需运行 Linux 容器,建议使用 Hyper-V 虚拟机或迁移到 Windows 10/11 + WSL2 + Docker Desktop,或使用 Linux 服务器


❌ 常见问题

问题 解决方法
Install-Module : The term 'Install-Module' is not recognized 运行 Install-PackageProvider -Name NuGet -Force 并更新 PowerShellGet:
Install-Module -Name PowerShellGet -Force -AllowClobber
镜像拉取慢 配置国内镜像器(但 Windows 镜像通常只能从官方获取)
容器无法启动 检查宿主机与容器镜像的 OS 版本是否兼容(如 ltsc2022 对应 Windows Server 2022)

✅ 总结

步骤 命令
启用容器功能 Install-WindowsFeature Containers
安装 Docker Install-Package -Name docker -ProviderName DockerMsftProvider
安装 Docker Compose 下载 .execli-plugins 目录
验证 docker --version, docker compose version

如果你希望更现代化的体验(如 GUI、Kubernetes 支持),可以考虑使用 Docker Desktop for Windows,但它 不支持 Windows Server,只支持 Windows 10/11 Pro 或 Enterprise。


如有具体版本需求(如 Server 2019)、网络限制或环境,请告知,我可以提供定制化方案。

未经允许不得转载:云计算 » windows server安装docker和docker-compose?