Компоненты windows 10 контейнеры

Начало работы. Настройка контейнеров Linux в Windows 10 Get started: Set up Linux Containers on Windows 10

Это упражнение охватывает создание и запуск контейнеров Linux в Windows 10. The exercise will walk through creating and running Linux containers on Windows 10.

В рамках этого краткого руководства вы сможете выполнить следующие действия: In this quick start you will accomplish:

  1. Установка Docker Desktop Installing Docker Desktop
  2. Запуск простого контейнера Linux Running a simple Linux container

Это краткое руководство применимо только к Windows 10. This quick start is specific to Windows 10. Дополнительную документацию по быстрому началу работы можно найти в содержании в левой части этой страницы. Additional quick start documentation can be found in the table of contents on the left-hand side of this page.

Предварительные условия Prerequisites

Убедитесь, что ваша система отвечает следующим требованиям: Please make sure you meet the following requirements:

  • Одна физическая компьютерная система под управлением Windows 10 Профессиональная, Windows 10 Корпоративная или Windows Server 2019 версии 1809 или более поздней версии. One physical computer system running Windows 10 Professional, Windows 10 Enterprise, or Windows Server 2019 version 1809 or later
  • Убедитесь, что включена технология Hyper-V. Make sure Hyper-V is enabled.

Установка Docker Desktop Install Docker Desktop

Скачайте Docker Desktop и запустите установщик (вам потребуется войти в систему Download Docker Desktop and run the installer (You will be required to login. и создать учетную запись, если у вас ее еще нет). Create an account if you don’t have one already). Подробные инструкции по установке доступны в документации по Docker. Detailed installation instructions are available in the Docker documentation.

Запуск первого контейнера Linux Run Your First Linux Container

Чтобы запустить контейнеры Linux, необходимо убедиться в ориентировании Docker на требуемую управляющую программу. In order to run Linux containers, you need to make sure Docker is targeting the correct daemon. Чтобы проверить это, щелкните значок Docker с изображением кита на панели задач и выберите Switch to Linux Containers в меню действий. You can toggle this by selecting Switch to Linux Containers from the action menu when clicking on the Docker whale icon in the system tray. Если вы видите Switch to Windows Containers , в качестве целевой уже задана управляющая программа Linux. If you see Switch to Windows Containers , then you are already targeting the Linux daemon.

Убедившись в ориентировании на требуемую управляющую программу, запустите контейнер с помощью следующей команды: Once you’ve confirmed you are targeting the correc daemon, run the container with the following command:

Должен запуститься контейнер и отобразиться текст «hello_world». Затем будет выполнен выход. The container should run, print «hello_world», then exit.

При запросе docker images должен отобразиться образ контейнера Linux, который вы только что извлекли и запустили: When you query docker images , you should see the Linux container image that you just pulled an ran:

Начало работы. Подготовка Windows для контейнеров Get started: Prep Windows for containers

Из этого руководства вы узнаете, как выполнить следующие задачи: This tutorial describes how to:

Предварительные требования Prerequisites

Windows Server Windows Server

Чтобы запустить контейнеры в Windows Server, вам нужен физический сервер или виртуальная машина под управлением Windows Server (Semi-Annual Channel), Windows Server 2019 или Windows Server 2016. To run containers on Windows Server, you need a physical server or virtual machine running Windows Server (Semi-Annual Channel), Windows Server 2019, or Windows Server 2016.

Windows 10 Windows 10

Для запуска контейнеров в Windows 10 необходимо следующее: To run containers on Windows 10, you need the following:

  • Одна физическая компьютерная система под управлением Windows 10 Профессиональная или Корпоративная с юбилейным обновлением (версия 1607) или более поздней версии. One physical computer system running Windows 10 Professional or Enterprise with Anniversary Update (version 1607) or later.
  • Необходимо включить Hyper-V. Hyper-V should be enabled.
Читайте также:  Hp laserjet 2420n драйвер windows 10

Начиная с Windows 10 с обновлением от октября 2018 г. мы не запрещаем пользователям запускать контейнер Windows в режиме изоляции процессов в Windows 10 Корпоративная или Профессиональная для целей разработки и тестирования. Starting with the Windows 10 October Update 2018, we no longer disallow users from running a Windows container in process-isolation mode on Windows 10 Enterprise or Professional for dev/test purposes. Дополнительные сведения см. в разделе вопросов и ответов. See the FAQ to learn more.

Контейнеры Windows Server по умолчанию используют изоляцию Hyper-V в Windows 10, чтобы разработчики получили ту же версию ядра и ту же конфигурацию, что и в рабочей среде. Windows Server Containers use Hyper-V isolation by default on Windows 10 in order to provide developers with the same kernel version and configuration that will be used in production. Дополнительные сведения об изоляции Hyper-V см. в разделе документации с описанием концепций. Learn more about Hyper-V isolation in the Concepts area of our docs.

Установка Docker Install Docker

Первым шагом станет установка Docker. Это нужно для работы с контейнерами Windows. The first step is to install Docker, which is required for working with Windows containers. Docker предоставляет стандартную среду выполнения для контейнеров, а также основной API и интерфейс командной строки (CLI). Docker provides a standard runtime environment for containers, with a common API and command-line interface (CLI).

Дополнительные сведения о конфигурации см. в статье Подсистема Docker в Windows. For more configuration details, see Docker Engine on Windows.

Чтобы установить Docker в Windows Server, можно использовать модуль PowerShell поставщика OneGet, который опубликован корпорацией Майкрософт, под именем DockerMicrosoftProvider. To install Docker on Windows Server, you can use a OneGet provider PowerShell module published by Microsoft called the DockerMicrosoftProvider. Этот поставщик включает поддержку контейнеров в Windows, а также устанавливает подсистему и клиент Docker. This provider enables the containers feature in Windows and installs the Docker engine and client. Вот как это сделать. Here’s how:

Откройте сеанс PowerShell с повышенными привилегиями и установите поставщик Docker-Microsoft PackageManagement из коллекции PowerShell. Open an elevated PowerShell session and install the Docker-Microsoft PackageManagement Provider from the PowerShell Gallery.

Если будет предложено установить поставщик NuGet, введите Y и установите его. If you’re prompted to install the NuGet provider, type Y to install it as well.

С помощью модуля PackageManagement PowerShell установите последнюю версию Docker. Use the PackageManagement PowerShell module to install the latest version of Docker.

Когда в PowerShell появится запрос, доверять ли источнику пакета DockerDefault, введите A , чтобы продолжить установку. When PowerShell asks you whether to trust the package source ‘DockerDefault’, type A to continue the installation.

После установки перезагрузите компьютер. After the installation completes, restart the computer.

Если позже вам потребуется обновить Docker, выполните следующие действия: If you want to update Docker later:

  • Проверьте установленную версию с помощью следующей команды: Check the installed version using:
  • Найдите текущую версию с помощью следующей команды: Find the current version using:
  • Когда все будет готово, запустите обновление с помощью следующей команды: When you’re ready, upgrade using:
  • Затем выполните следующую команду: Then, followed with:

Windows Admin Center; Windows Admin Center

Вы можете использовать Windows Admin Center для корректной настройки компьютера Windows Server в качестве узла контейнера. You can use Windows Admin Center to properly set up a Windows Server machine as a container host. Чтобы начать работу, убедитесь, что в вашем экземпляре Windows Admin Center установлена последняя версия расширения «Контейнеры». To get started, ensure you have the latest Containers extension installed on your Windows Admin Center instance. Дополнительные сведения об установке и настройке расширений см. в документации по Windows Admin Center. For more information on how to install and configure extensions, check out the Windows Admin Center documentation. Установив расширение «Контейнеры», выберите компьютер Windows Server, который нужно настроить, и выберите вариант «Контейнеры»: With the Containers extension installed, target the Windows Server machine you want to configure and select the Containers option:

Нажмите кнопку Установить. Click the Install button. Windows Admin Center запустит настройку Windows Server и Docker в фоновом режиме. Windows Admin Center will start the configuration of Windows Server and Docker in the background. После завершения процесса можно обновить страницу и просмотреть другие функции расширения «Контейнеры». After the process is complete, you can refresh the page and see the other functionalities of the Containers extension.

Вы можете установить Docker в Windows 10 Профессиональная и Корпоративная, выполнив описанные ниже действия. You can install Docker on Windows 10 Professional and Enterprise editions by using the following steps.

Читайте также:  Почему астра линукс называется городами

Скачайте и установите Docker Desktop, создав бесплатную учетную запись Docker, если у вас ее нет. Download and install Docker Desktop, creating a free Docker account if you don’t have one already. Дополнительные сведения см. в документации по Docker. For more details, see the Docker documentation.

Во время установки выберите контейнеры Windows в качестве типа контейнеров по умолчанию. During installation, set the default container type to Windows containers. Чтобы переключиться после установки, можно использовать элемент Docker в области уведомлений Windows (как показано ниже) либо следующую команду в командной строке PowerShell: To switch after installation completes, you can use either the Docker item in the Windows system tray (as shown below), or the following command in a PowerShell prompt:

Дальнейшие действия Next steps

Теперь, когда ваша среда полностью настроена, перейдите по приведенной ниже ссылке, чтобы узнать, как запустить контейнер. Now that your environment has been configured correctly, follow the link to learn how to run a container.

Подробно о Windows 10X: контейнеры, работа UWP и Win32 приложений

11 февраля на конференции для разработчиков Microsoft 365 Developer Day компания Microsoft поделилась некоторыми деталями о работе новой операционной системы Windows 10X. Также был представлен эмулятор для разработчиков, позволяющий оптимизировать приложения для устройств с двумя экранами.

Главная особенность Windows 10X заключается в том, что приложения запускаются в контейнерах. Подробнее остановимся на данной технологии и рассмотрим, какие типы приложений можно будет запустить на устройствах под управлением Windows 10X, таких как Surface Neo.

Три типа контейнеров для максимальной совместимости

Контейнеры представляют собой изолированные среды, которые абстрагированы от операционной системы, что позволяет лучше контролировать их поведение.

В Windows 10X абсолютно все приложения выполняются в контейнерах, которые являются частью архитектуры ОС. Разработчикам не нужно реализовывать какие-либо дополнительные изменения на высоком уровне для запуска приложений в Windows 10X.

Windows 10X поддерживает три типа контейнеров, один из которых является новым — Win32.

  • Win32 контейнер: предназначен для запуска «классических» 32-битных и 64-битных приложений Win32, WinForms, WPF, Electron и др. Данный контейнер схож со средой обычной настольной ОС. В Windows 10X предусмотрен один контейнер для всех приложений Win32, который обладает «высокой совместимостью» с существующим ПО.
  • MSIX контейнер с полным доверием: имеет высокую совместимость с существующими приложениями. Данный тип контейнеров работает изолированно от других приложений Win32 и может запускаться совместно с Win32 контейнером.
  • Все UWP-приложения: наименьшее влияние на производительность, хорошая автономность, а также наивысший уровень безопасности и конфиденциальности.

Обычным потребителям не обязательно знать о данных технологиях. Большинство приложений Win32 и UWP приложений будут сразу же работать в Windows 10X. При этом неважно, откуда вы устанавливаете приложение — из Магазина Microsoft, Интернета или с USB-накопителя.

Разработчики самостоятельно могут выбирать архитектуру своих продуктов: Win32, прогрессивные веб-приложения или UWP. По понятным причинам UWP-приложения лучше всего оптимизированы для Windows 10X, но Microsoft приложила много усилий, чтобы классические настольные приложения корректно работали в новой системе.

Контейнеры позволяют оптимизировать энергопотребление и производительность

UWP-платформа имеет наилучшую оптимизацию для Windows 10X. Это вполне логично, ведь UWP-приложения первоначально разрабатывались с учетом мобильной платформы Windows Phone (Windows Mobile). Такие приложения повышают безопасность и производительность, снижают энергопотребление и соблюдают меры энергосбережения операционной системы (переход и выход из спящего режима).

Приложения Win32 создавались преимущественно для настольных компьютеров. Им недостает мобильной оптимизации, как у UWP. Классические приложения, как правило, являются более функциональными, чем UWP, но хуже влияют на время автономной работы и скорость работы системы. В любом случае, даже в 2020 году приложения Win32 играют важную роль в современных компьютерных вычислениях.

Microsoft решила «исправить слабые стороны» приложений Win32 (и MSIX) с помощью контейнеризации:

  • Контейнеры Win32 и MSIX потребляют меньше ресурсов, когда окна не находятся в видимой области.
  • Приложения полностью приостанавливаются, когда нет открытых окон.

В свернутом состоянии приложения Win32 и MSIX не будут работать в фоновом режиме. Данная мера позволяет экономить системные ресурсы и заряд аккумулятора. И наоборот, когда приложения Win32 активно используется, они выделяют больше ресурсов для высокой производительности.

Существует два последствия такого поведения. Во-первых, классические приложения Win32 не смогут выполнять фоновые задачи. По крайней мере длительные задачи до приостановки контейнера. Во-вторых, приложения Win32 не смогут автоматически запускаться в Windows 10X. В Windows 10X нет системного трея, поэтому классические приложения не смогут непрерывно работать в фоновом режиме.

Примечательно, что Microsoft может позволить контролировать это поведение самому пользователю. В этом случае, контейнеры с Win32 приложениями смогут работать в фоне. Однако, окончательное решение еще не принято.

Наконец, из-за особенности архитектуры контейнеров Win32 и MSIX, антивирусные системы либо будут совсем не нужны, либо будут иметь множество ограничений, что опять же приведет к повышению производительности и увеличению времени автономной работы.

Читайте также:  Iso для linux debian

Все будет работать корректно

Интересно, что контейнеризация приложений Win32 не скажется на их функциональных возможностях. Microsoft заявляет, что эти классические приложения получат полный доступ к следующим компонентам:

  • Мышь, клавиатуры, стилус, сенсорный ввод
  • Графика DirectX, аудиоустройства и медиа устройства
  • Сеть
  • Печать

Это означает, что старая модель «Plug and Play» сохранится, и на Surface Neo можно будет использовать все, что вы к нему подключите, включая внешние мониторы и периферийные устройства.

Уровень безопасности будет повышен, потому что пользователь сможет запрещать классических приложениям доступ к камере, микрофону и даже к данным местоположения. Для приложений UWP уже реализована такая функция — пользователь может самостоятельно выдавать разрешения для отдельных приложений. В Windows 10X при желании пользователи смогут отозвать разрешения для всех приложений Win32 на уровне контейнера.

Так как в Windows 10 отсутствует системный трей, то классические приложения не смогут его использовать, что, тем не менее, не должно привести к проблемам стабильности. Microsoft сообщает, что Win32 приложения cмогут работать «как есть» (то есть без изменений в реестре), но из-за контейнеризации программные вызовы никогда не коснутся ОС. Компания заявляет, что ограничения, наложенных контейнером Win32, не должны приводить к сбоям.

Два Проводника

Двойственная природа Windows 10X выражается не только в совместной работе UWP и Win32 приложений, но и в использовании двух файловых менеджеров, в том числе при обращении к команде «Сохранить как» .

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

Однако, при вызове диалогового окна работы с файлами в UWP-приложениях или в самой системе Windows 10X откроется «современный» Проводник Windows (Modern File Explorer), который ограничен необходимыми библиотеками, такими как Видео, Музыка, Избранное, Документы, Изображения и др.

Это значит, что пользователи получают базовый уровень доступа к основным системным библиотекам, но не смогут обращаться к основной файловой структуре на уровне ОС, как в любой настольной системе Windows. Опять же, приложения Win32 будут корректно работать без какого-либо изменения кода.

Приложения запускаются в развернутом режиме

Корпоративный вице-президент Microsoft Developer Platform, Кевин Галло (Kevin Gallo) рассказал, что в настоящее время все приложения в Windows 10X работают в полноэкранном режиме (т.е. развернуты на весь экран). Это похоже на то, как приложения запускаются в Windows 8 или в планшетном режиме в Windows 10.

Причиной такого выбора является размер экрана: чем меньше дисплей, тем больше «плотность» отображаемой информации. Запуск пяти приложений с маленькими окнами на одном 9-дюймовом дисплее вряд ли будет популярным сценарием.

Данная тема является спорной, и Microsoft открыта к диалогу по данному вопросу. Если разработчики захотят работать с мелкими окнами, то компания может разрешить это.

Итог: Windows 10X является технически сложной системой, но простой для пользователя

Microsoft спроектировала Windows 10X таким образом, чтобы она была нейтральной для приложений, независимо от архитектуры: Electron, UWP, Win32, WinForms, WPF. Все эти приложения уверенно запустятся на Windows 10X без существенных изменений в коде.

По сравнению с обычной Windows 10 Microsoft изменила не только дизайн, но и основный приоритет:

  • Windows 10 Домашняя / Pro: создана для приложений Win32, но также может работать с UWP.
  • Windows 10X: создана для UWP приложений, но также может работать с Win32.

Конечно, это условная классификация, но Windows 10X построена так, чтобы быть быстрой, гибкой, мобильной и безопасной. Уже известно, что обновление ОС должно занимать не более 90 секунд. Данное преимущество связано с тем, что Windows 10X построена на замкнутой и ограниченной природе UWP, как и HoloLens.

В любом случае, владельцы Surface Neo смогут устанавливать любое приложение по желанию, и ожидаемое поведение будет соблюдено. У разработчиков также не нужно вносить существенные изменения в свои продукты.

Галло подчеркивает, что приложения, оптимизированные для работы с двумя экранами, также должны обеспечивать лучшее взаимодействие с настольными системами Windows 10. Это яркий пример преемственности Windows 10X и Windows 10.

Как все будет работать на практике, пока неизвестно. Microsoft утверждает, что разница в производительности между приложениями Win32 и UWP в Windows 10X не должна быть заметна для пользователей. Мы вступаем в новую эру мобильных ПК, где пользователям не придется идти на компромиссы.

Примечание: Большая часть данной информации основана на демонстрационном видео «How Windows 10X runs UWP and Win32 apps» показанном на Microsoft 365 Developer Day.

Оцените статью