走啊走
加油

windows server 2022 docker安装?

服务器价格表

在 Windows Server 2022 上安装 Docker,最推荐且官方支持的方式是安装 Docker Desktop for Windows(基于 Hyper-V 或 WSL 2)。虽然也可以使用传统的“容器化服务器”模式(Server Core),但现代开发和管理流程通常首选 Docker Desktop。

以下是两种主流安装方案的详细步骤:


方案一:安装 Docker Desktop for Windows(推荐)

这是最简单、功能最全的方式,适用于大多数场景。它会自动处理底层配置(如启用 Hyper-V 和 WSL 2)。

1. 前置条件检查

在开始之前,请确保您的服务器满足以下条件:

  • 操作系统:Windows Server 2022 Standard 或 Datacenter。
  • 虚拟化支持:BIOS/UEFI 中必须开启 Intel VT-x / AMD-V 虚拟化技术。
  • 系统更新:建议将 Windows Server 更新到最新版本。
  • 角色安装:需要安装 "Hyper-V" 和 "Containers" 功能(Docker Desktop 安装程序通常会尝试自动配置,但手动确认更稳妥)。

2. 下载与安装

  1. 下载:访问 Docker Hub 或 Docker 官网 下载 Docker Desktop 的 MSI 安装包(注意选择 Stable 版本)。
    • 注意:Docker Desktop for Windows 需要订阅才能用于生产环境商业用途,如果是个人学习或非商业用途可直接使用。
  2. 运行安装:双击下载的 .msi 文件。
  3. 配置选项
    • 在安装向导中,确保勾选 "Use WSL 2 instead of Hyper-V"(如果可用,WSL 2 性能更好且资源占用更低)。
    • 或者保持默认的 Hyper-V 模式。
  4. 完成安装:按照提示完成安装,安装完成后会要求重启计算机

3. 验证安装

重启后,打开 PowerShell(以管理员身份运行),输入以下命令:

docker --version
docker run hello-world
  • 如果看到版本号输出,说明安装成功。
  • 如果 docker run hello-world 拉取镜像并打印出欢迎信息,则证明 Docker 引擎已完全正常工作。

方案二:传统安装(仅作为服务器容器运行时)

如果您不需要图形界面(GUI),只需要一个轻量级的后端容器服务(类似 Linux 上的 Docker Engine),可以使用此方法。这种方式更适合纯命令行管理的生产环境。

1. 启用必需功能

在 PowerShell (管理员) 中运行以下命令来启用必要的角色:

# 启用 Hyper-V 和 Containers 功能
Install-WindowsFeature -Name Hyper-V, Containers -IncludeManagementTools -Restart

执行后可能需要重启服务器。

2. 安装 Docker Engine

由于没有图形化安装包,我们需要通过 PowerShell 脚本直接下载并安装 Docker Engine。

# 设置环境变量以获取最新版本的安装脚本
$env:DOCKER_VERSION = "27.0.0" # 可以根据需要修改具体版本号
$env:DOCKER_BUILD = "stable"

# 下载并运行安装脚本
Invoke-WebRequest -Uri "https://get.docker.com/builds/Windows/x86_64/docker-$(($env:DOCKER_VERSION).Replace('.','_'))-$(if ($env:DOCKER_BUILD -eq 'edge') {'edge'} else {'stable'})-x86_64.zip" -OutFile "docker.zip"
Expand-Archive -Path "docker.zip" -DestinationPath "C:Program FilesDocker" -Force
Remove-Item "docker.zip"

# 添加 Docker 到系统路径
[Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:Program FilesDocker", "Machine")

注:上述脚本逻辑较为简化,生产环境中建议参考微软官方文档中的 install-docker.ps1 脚本以确保版本兼容性和完整性。

3. 启动服务

Start-Service docker
docker --version

常见问题与注意事项

  1. 网络问题

    • 在中国大陆地区,直接拉取 Docker Hub 的镜像可能会超时。建议在 Docker Desktop 的设置(Settings -> General)中开启 “使用X_X”,或者配置国内镜像提速器(如阿里云、腾讯云等)。
    • 配置镜像提速器的方法(以阿里云为例):编辑 %ProgramData%dockerconfigdaemon.json,添加 "registry-mirrors": ["https://<你的提速地址>"],然后重启 Docker 服务。
  2. WSL 2 依赖

    • 如果使用方案一并选择 WSL 2 模式,需要确保 WSL 2 内核已更新。可以在 PowerShell 中运行 wsl --update
  3. 许可证限制

    • 重要:Docker Desktop 在商业环境中(员工超过 250 人且年营收超过 1000 万美元)需要付费订阅。如果您的企业规模较小或仅为内部测试,通常可以免费使用。如果是大型企业的核心生产环境且不想付费,建议使用 方案二(仅安装 Docker Engine)或迁移至 Linux 服务器。
  4. 权限问题

    • 如果在非管理员账户下运行 Docker 报错,请将该用户添加到 docker-users 组,或者始终使用管理员权限运行 PowerShell。

总结

对于大多数用户,方案一(Docker Desktop) 是最快上手的选择。如果您正在构建一个无头(Headless)的生产服务器且不打算使用 GUI,方案二 更加轻量。无论哪种方式,安装完成后请务必运行 docker run hello-world 进行最终验证。