走啊走
加油

WINDOWS SERVER 2025安装WSL及DOCKER?

服务器价格表

在 Windows Server 2025 上安装 WSL (Windows Subsystem for Linux) 和 Docker 是一个相对直接的过程,但需要注意 Server 版本对图形界面(GUI)的依赖以及内核更新的要求。

以下是完整的分步指南:

前置条件与准备

  1. 启用虚拟化:确保 BIOS/UEFI 中已开启 CPU 虚拟化技术(Intel VT-x / AMD-V)。
  2. 系统更新:运行 Windows Update 确保系统为最新状态,特别是针对 WSL 的内核组件。
  3. 管理员权限:所有操作需在以管理员身份运行的 PowerShell 或 CMD 中进行。
  4. WSL 版本:Windows Server 2025 默认支持 WSL 2,这是推荐版本,因为它提供了完整的 Linux 内核功能,是运行 Docker 所必需的。

第一步:启用 WSL 功能并安装默认发行版

Windows Server 2025 通常不需要单独下载 ISO,可以通过命令行一键完成。

  1. 打开 PowerShell (管理员)

  2. 输入以下命令启用必要的功能和安装默认的 Ubuntu 发行版(如果未安装):

    wsl --install

    注意:此命令会自动下载并安装 WSL 2 内核、启用虚拟平台功能,并设置默认发行版(通常是 Ubuntu)。

  3. 重启服务器
    安装完成后,必须重启服务器才能生效:

    Restart-Computer
  4. 初始化 Linux 环境
    重启后,系统会启动一个终端窗口要求你创建新的 Linux 用户名和密码。

    • 输入任意用户名(例如 admin)。
    • 输入密码(输入时不会显示字符)。
    • 确认密码。
  5. 验证 WSL 状态
    再次打开 PowerShell,输入以下命令确认版本:

    wsl -l -v

    确保你的发行版状态显示为 Running 且版本为 2。如果不是 2,可以手动转换:

    wsl --set-version <发行版名称> 2

第二步:安装 Docker Desktop (推荐方式)

在 Windows 上,最稳定且易于管理的方式是安装 Docker Desktop。它会自动配置 WSL 2 后端。

方案 A:使用 Microsoft Store (如果服务器启用了 GUI 和 Store)

如果你的 Windows Server 2025 安装了桌面体验(Desktop Experience)并且能访问 Microsoft Store:

  1. 打开 Microsoft Store
  2. 搜索 Docker Desktop
  3. 点击 获取 进行安装。
  4. 安装完成后启动 Docker Desktop。首次启动时,它会提示安装 WSL 2 后端(如果尚未配置),请同意并等待其自动完成。

方案 B:离线安装 (适用于无网或纯命令行环境)

如果服务器没有连接互联网或无法使用 Store,请下载 .msi 安装包。

  1. 前往 Docker 官方发布页面下载适用于 Windows 的安装包(文件名类似 Docker%20Desktop%20Installer.exe)。
    • 提示:由于 Server 2025 较新,请确保下载的是最新版,它已原生支持 WSL 2。
  2. 将安装包复制到服务器。
  3. 双击运行安装程序。
  4. 关键步骤:在安装向导中,务必勾选 "Use WSL 2 instead of Hyper-V"(使用 WSL 2 而不是 Hyper-V)。
    • 即使你已经安装了 WSL,这一步也至关重要,因为 Docker Desktop 需要配置 WSL 集成。
  5. 完成安装并重启电脑。

第三步:验证 Docker 安装

安装完成后,我们需要验证 Docker 是否正在通过 WSL 2 运行。

  1. 打开 PowerShell (管理员)

  2. 运行以下命令检查 Docker 版本:

    docker --version

    输出应类似:Docker version 27.x.x, build ...

  3. 运行一个简单的测试容器(Hello World):

    docker run hello-world

    如果看到 "Hello from Docker!" 的消息流,说明安装成功。

  4. 检查后端类型
    你可以查看 Docker 的系统信息来确认它使用的是 WSL 2:

    docker info | findstr "Server Version"
    # 或者更详细地查看运行时信息
    docker system info | findstr "Runtimes"

    通常你会看到 runcnvidia-container-runtime 等,这表示 Docker Engine 正在运行。要确认底层是 WSL 2,可以在 PowerShell 中输入:

    wsl -d docker-desktop -e echo "Docker is running on WSL2 backend"

常见问题与注意事项

  • 资源限制:Windows Server 2025 默认可能限制 WSL 2 的内存使用量。如果容器构建缓慢或报错内存不足,可以在 %USERPROFILE%.wslconfig 文件中调整配置:

    [wsl2]
    memory=8GB
    swap=4GB
    processors=4

    修改后需执行 wsl --shutdown 重启 WSL 服务。

  • 文件路径性能

    • 不要在 WSL 内部挂载 Windows 文件系统(如 /mnt/c)进行频繁的文件写入操作(如编译代码),这会显著降低性能。
    • 最佳实践:将项目代码放在 WSL 内部的 Linux 目录(如 /home/user/project)中,或者使用 WSL 2 的文件系统缓存优化。
  • 网络问题
    如果 Docker 无法拉取镜像,可能是 DNS 解析问题。可以在 WSL 的 /etc/resolv.conf 中手动指定公共 DNS(如 8.8.8.8),或者在 Docker Desktop 设置中调整网络模式。

  • Headless 模式
    如果你是在没有图形界面的核心版(Core)服务器上操作,Docker Desktop 可能无法启动图形化界面。在这种情况下,建议仅安装 Docker Engine 而非 Docker Desktop。

    • 安装 Docker Engine 的命令(需先添加 Docker 仓库):
      # 示例:添加 Docker 官方 GPG 密钥和存储库(具体取决于微软提供的脚本)
      # 对于 Server 2025,通常推荐使用 winget 安装:
      winget install Docker.DockerDesktop

      如果 Winget 不可用,可能需要通过脚本安装 Docker Engine for Windows,但这通常需要配合 WSL 2 作为后端。

通过以上步骤,你的 Windows Server 2025 应该已经成功集成了 WSL 2 和 Docker 环境,可以开始部署容器化应用了。