走啊走
加油

windows server 2022如何使用docker?

服务器价格表

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

  1. Docker Desktop for Windows Server(不推荐)
  2. 直接安装 Docker Engine(推荐方式)

由于 Docker Desktop 在 Windows Server 上支持有限且通常用于开发环境,生产环境中更推荐使用 Docker Engine for Windows Server


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

步骤 1:启用容器功能

以管理员身份运行 PowerShell,执行以下命令:

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

# 重启服务器
Restart-Computer -Force

注意:安装完成后必须重启系统。


步骤 2:下载并安装 Docker Engine

目前微软和 Docker 合作提供了一个适用于 Windows 的 Docker 官方二进制包。我们使用 PowerShell 来安装。

方法一:使用 Microsoft 的脚本自动安装(推荐)
# 下载并运行官方安装脚本
Invoke-WebRequest "https://github.com/microsoft/hcsshim/releases/latest/download/install.ps1" -OutFile "install-docker.ps1"
.install-docker.ps1

这个脚本会自动:

  • 下载最新稳定版的 dockerddocker.exe
  • 安装为 Windows 服务
  • 启动 Docker 服务

参考项目:https://github.com/microsoft/hcsshim


方法二:手动安装 Docker Engine
  1. 下载 Docker 二进制文件:
# 创建目录
New-Item -ItemType Directory -Path "C:Program FilesDocker" -Force

# 下载 docker.zip(示例版本,请检查最新版)
Invoke-WebRequest -Uri "https://download.docker.com/components/engine/windows-server/2022/docker-24.0.7.zip" -OutFile "docker.zip"

# 解压到目标目录
Expand-Archive -Path "docker.zip" -DestinationPath "C:Program FilesDocker" -Force

# 清理压缩包
Remove-Item "docker.zip"

⚠️ 注意:请根据实际需求替换下载链接中的版本号。可查看 Docker 官方发布页 获取最新版本。

  1. 将 Docker 添加到系统路径:
# 添加 Docker 到 PATH 环境变量
[Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:Program FilesDocker", [System.EnvironmentVariableTarget]::Machine)

# 当前会话立即生效
$env:Path += ";C:Program FilesDocker"
  1. 安装 Docker 服务:
# 安装 dockerd 作为服务
& 'C:Program FilesDockerdockerd.exe' --register-service

# 启动服务
Start-Service docker

步骤 3:验证安装

# 查看 Docker 版本
docker --version

# 查看 Docker 信息
docker info

# 运行测试容器(Windows 容器)
docker run mcr.microsoft.com/windows/nanoserver:ltsc2022 echo "Hello from Docker on Windows Server 2022!"

🔧 常见配置(可选)

设置 Docker 使用镜像提速器(如阿里云)

创建或编辑配置文件:

# 创建 daemon.json 配置文件
@"{
    "registry-mirrors": ["https://<your-mirror-id>.mirror.aliyuncs.com"]
}"@ | Out-File -FilePath C:ProgramDatadockerconfigdaemon.json -Encoding Ascii

替换 <your-mirror-id> 为你自己的阿里云提速地址(登录 https://cr.console.aliyun.com 获取)

重启 Docker 服务:

Restart-Service docker

📌 注意事项

  1. 仅支持 Windows 容器
    Windows Server 2022 默认只支持运行 Windows 容器,不支持 Linux 容器(除非启用 WSL2 或特殊桥接,但非常复杂且不稳定)。

  2. 容器镜像必须匹配主机 OS 版本
    例如:使用 ltsc2022 镜像才能在 WinSrv 2022 上运行。

    docker run mcr.microsoft.com/windows/servercore:ltsc2022 cmd
  3. 确保已激活 Windows Server 并有有效许可证
    某些功能可能受限于授权状态。

  4. 防火墙与网络策略
    若部署服务,需开放相应端口,并配置 NAT 或透明网络模式。


❌ 不推荐:Docker Desktop for Windows Server

Docker Desktop 主要面向开发者桌面环境(Windows 10/11 Pro),不正式支持 Windows Server 2022。即使能运行,也可能违反许可协议。


✅ 总结

步骤 操作
1 安装 Containers 功能
2 下载并安装 Docker Engine(推荐用 install.ps1 脚本)
3 注册并启动 docker 服务
4 测试运行一个 Windows 容器

📚 参考资料

  • https://docs.microsoft.com/en-us/virtualization/windowscontainers/quick-start/set-up-environment?tabs=windows-server
  • https://github.com/microsoft/hcsshim
  • https://download.docker.com/components/engine/windows-server/

如果你希望进一步集成 Kubernetes、使用 Portainer 管理界面或配置 CI/CD,也可以继续扩展。需要的话我可以继续指导。