windows server 2022 with container怎么用?

服务器

在 Windows Server 2022 中使用 Containers(容器) 功能,可以让你运行基于 Windows 或 Linux 的容器应用。Windows Server 2022 支持两种类型的容器:

  1. Windows 容器(Windows Containers)
  2. Hyper-V 隔离容器(Hyper-V Isolated Containers)

下面是一个完整的指南,帮助你在 Windows Server 2022 with Containers 版本中配置和使用容器。


✅ 第一步:确认系统版本

确保你使用的是 Windows Server 2022 with Containers 版本。可以通过以下命令查看系统信息:

systeminfo | findstr /C:"OS Name" /C:"OS Version"

输出示例:

OS Name:                   Microsoft Windows Server 2022 Datacenter
OS Version:                10.0.19044 N/A Build 19044

如果你安装的是标准版的 Windows Server 2022,则需要手动安装容器功能。


✅ 第二步:启用容器功能(如需)

如果使用的是标准版(非 with Containers 版本),需要手动安装容器功能:

Install-WindowsFeature -Name Containers

然后重启服务器:

Restart-Computer -Force

✅ 第三步:安装 Docker Engine(推荐)

Docker 是目前最常用的容器管理工具。

方法一:使用 Microsoft 提供的脚本安装 Docker

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

# 安装 Docker-Microsoft Package Provider
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force

# 安装 Docker Engine
Install-Package -Name Docker -ProviderName DockerMsftProvider

# 重启计算机
Restart-Computer -Force

方法二:使用 Chocolatey 安装(可选)

如果你安装了 Chocolatey 包管理器:

choco install docker -y

✅ 第四步:启动并验证 Docker 服务

重启后,在 PowerShell 中执行:

Start-Service Docker
Get-Service Docker

验证是否正常运行:

docker info

你应该看到类似如下输出:

Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
Server Version: 20.10.xx
...
Operating System: Windows Server 2022 Datacenter

✅ 第五步:运行第一个容器

你可以尝试运行一个简单的 Windows 容器来测试:

docker run mcr.microsoft.com/windows/servercore:ltsc2022 cmd echo Hello from Windows Container

或者运行交互式容器:

docker run -it mcr.microsoft.com/windows/servercore:ltsc2022 cmd

如果你想运行 Linux 容器,需要切换到 Linux 模式:

右键任务栏中的 Docker Desktop(如果有 GUI),点击 Switch to Linux containers,或在 PowerShell 中运行:

& 'C:Program FilesDockerDockerDockerCli.exe' -SwitchLinuxEngine

⚠️ 注意:Windows Server 2022 不支持 WSL2,因此不能直接运行 Linux 容器除非启用了虚拟机平台支持(Hyper-V)。


✅ 第六步:创建自定义镜像(Dockerfile 示例)

创建一个文件夹,例如 C:myapp,在里面创建一个名为 Dockerfile 的文件,内容如下:

FROM mcr.microsoft.com/windows/servercore:ltsc2022
CMD ["cmd", "/c", "echo Hello from my custom image!"]

构建镜像:

docker build -t hello-app .

运行它:

docker run hello-app

✅ 第七步:高级用法(可选)

使用 Hyper-V 隔离模式运行容器

docker run --isolation=hyperv -it mcr.microsoft.com/windows/servercore:ltsc2022

查看正在运行的容器

docker ps

查看所有容器

docker ps -a

? 常见问题

Q1:为什么我无法运行 Linux 容器?

A:Windows Server 2022 默认只能运行 Windows 容器。要运行 Linux 容器,必须开启 Hyper-V 并且使用隔离模式,或改用支持 WSL2 的 Windows 系统(如 Windows 10/11 Pro)。

Q2:如何更新 Docker?

使用以下命令升级 Docker 引擎:

Update-Package -Name Docker -ProviderName DockerMsftProvider

✅ 总结

步骤 内容
1 确认是 Windows Server 2022 with Containers
2 安装 Containers 功能(如需要)
3 安装 Docker 引擎
4 启动 Docker 服务并测试运行容器
5 编写 Dockerfile 构建自定义镜像
6 可选:使用 Hyper-V 隔离、运行 Linux 容器等

如果你有具体的用途(比如部署 ASP.NET Core 应用、SQL Server 容器等),欢迎告诉我,我可以提供更详细的部署指导!

未经允许不得转载:CDNK博客 » windows server 2022 with container怎么用?