Обзор базовых образов контейнеров Windows

Область применения: Windows Server 2025, Windows Server 2022, Windows Server 2019, Windows Server 2016

Windows предлагает четыре базовых образа контейнера, которые можно создать. Каждый базовый образ — это другой тип операционной системы Windows или Windows Server. Каждый базовый образ имеет различный размер на диске и свой собственный набор API Windows.

Обнаружение образов

Все базовые образы контейнеров Windows можно обнаружить с помощью Docker Hub. Базовые образы контейнеров Windows приходят из mcr.microsoft.com, реестра контейнеров Майкрософт (MCR). Эта регистрация объясняет, почему команды извлечения для базовых образов контейнеров Windows выглядят следующим образом:

docker pull mcr.microsoft.com/windows/servercore:ltsc2025

У MCR нет собственного интерфейса каталога. Вместо этого она поддерживает существующие каталоги, такие как Docker Hub. Благодаря глобальному присутствию Azure и сети доставки содержимого Azure, MCR обеспечивает единый и быстрый процесс вытягивания изображений. Клиенты Azure получают ускоренные сетевые скорости и тесные связи с MCR, Azure Marketplace и другими службами Azure. Многие службы Azure теперь используют контейнеры в качестве формата развертывания.

Выбор базового образа

Как выбрать правильный базовый образ для создания контейнера? Для большинства пользователей Windows Server Core и Nanoserver наиболее подходящие изображения для использования. Каждый базовый образ кратко описан в следующем списке:

  • Nano Server — это минимальный образ Windows для разработки новых приложений.
  • Server Core имеет средний размер и хорошо подходит для прямой миграции (lift-and-shift) приложений Windows Server в облако.
  • Windows — это самый крупный образ с полной поддержкой API Windows для рабочих нагрузок.
  • Windows Server имеет чуть меньший размер, чем образ Windows, включает полную поддержку API Windows и позволяет использовать дополнительные серверные функции.

Рекомендации

Хотя вы можете выбрать любой образ, который вы хотите использовать, рассмотрите следующие рекомендации:

  • Вашему приложению нужна полная версия .NET Framework? Если да, выберите Windows Server Core.
  • Вы создаете приложение для Windows на основе .NET Core? Если да, примените Nanoserver.
  • В образе контейнера Windows Server Core нет зависимости, необходимой вашему приложению? Если да, попробуйте сосредоточиться на Windows. Этот образ больше, чем другие базовые образы, но он содержит многие основные библиотеки Windows (например, библиотеку интерфейса графического устройства).
  • Вы являетесь участником программы предварительной оценки Windows? Если да, рассмотрите возможность использования инсайдерской версии изображений. Для получения дополнительной информации см. раздел "Базовые образы для участников программы Windows Insiders" в последующем разделе.
  • Нужна ли вашим контейнерным рабочим нагрузкам поддержка ускорения на базе GPU? Если да, попробуйте использовать Windows Server образ для включения аппаратного ускорения для рабочих нагрузок контейнеров Windows.

Совет

Многие пользователи Windows хотят поместить в контейнер приложения, имеющие зависимость от .NET. Помимо четырех базовых образов, описанных здесь, корпорация Майкрософт публикует несколько образов контейнеров Windows, которые предварительно настроены с популярными платформами Майкрософт, такими как образ платформы .NET и образ ASP.NET .

Сравнение Windows и Windows Server

Изображение Windows Server (3,1 ГБ) немного меньше, чем Windows изображение (3,4 ГБ). Образ Windows Server также наследует улучшения производительности и надежности от образа Server Core, поддерживает GPU и не имеет ограничений для подключений IIS. Чтобы использовать последний образ Windows Server, необходимо установить Windows Server 2025. Образ Windows недоступен для Windows Server 2025.

Базовые образы для участников программы предварительной оценки Windows

Для каждого базового образа контейнера Майкрософт предоставляет версию для предварительной оценки. Эти предварительные образы контейнеров содержат последние функциональные улучшения в наших образах контейнеров. При запуске узла с предварительной версией Windows (Windows Insider или Windows Server Insider) используйте эти образы системы. Приведенные ниже образы для участников программы предварительной оценки доступны в Docker Hub:

Дополнительные сведения см. в статье "Использование контейнеров с программой предварительной оценки Windows".

Windows Server Core и Nano Server

Windows Server Core и Nano Server — это наиболее распространенные базовые образы для целевых объектов. Ключевое различие между этими изображениями заключается в том, что Nano Server имеет меньшую поверхность API. PowerShell, WMI и стек обслуживания Windows отсутствуют на образе Nano Server.

Nano Server предоставляет достаточно поверхности API для запуска приложений, которые зависят от .NET Core или других современных платформ с открытым кодом. В качестве компромисса с меньшей поверхностью API образ Nano Server имеет меньше места на диске, чем остальные базовые образы Windows. Вы всегда можете добавлять слои поверх Nano Server по вашему усмотрению. Пример этого примера см. в файле Dockerfile для .NET Core Nano Server.