Связаться по:
vkarabedyants Telegram Viber
+7 (499) 350-10-69

Блог о системном администрировании серверов и сайтов

Установка, настройка программного обеспечения Linux, Windows операционных систем

Использование контейнеров Windows Server 2016

Установка контейнера на Windows

Всю подробную информацию по развертыванию контейнеров можно найти на MSDN. Для установки нужен физический или виртуальный сервер Windows Server 2016. Windows Server 2016 поддерживает вложенную виртуализацию (Nested virtualization), но для таких контейнеров есть дополнительные требования (см.MSDN ). Как вариант можно использовать готовый образ в Azure – Windows Server 2016 Core with Containers.

Среди компонентов сервера есть нужный компонент, процесс установки которого стандартен.

PS> Install-WindowsFeature Containers

Или отмечаем соответствующий пункт в мастере добавления ролей и компонентов.

установка контейнера win

Но в настоящее время необходимости в этом нет. Так как официально используется другой путь – при помощи компонентов Docker для установки поставщика которого используется модуль PowerShell. Поставщик обеспечит работу контейнеров на компьютере и установит Docker. Для работы Docker требуется обновление KB3176936. Поэтому перед началом работы лучше обновить ОС. Проще это сделать введя в консоли sconfig, затем выбрать пункт 6, и все обновления (нажать A и A). Ставим провайдер:

PS> Install-Module -Name DockerMsftProvider -Repository PSGallery -Force

установка docker windows

При помощи OneGet ставим последнюю версию Docker.

PS> Install-Package -Name docker -ProviderName DockerMsftProvider

При этом автоматически установится и компонент Контейнер. После завершения потребуется перезагрузка.

PS> Restart-Computer -Force

Файервол Windows блокирует порт 2375 на котором работает Docker. Открываем.

PS> netsh advfirewall firewall add rule name="docker engine" ↵
dir=in action=allow protocol=TCP localport=2375

При запуске демон Docker может не подключиться к npipe://, перенастроим чтобы он использовал pipe и TCP порт.

PS> Stop-Service docker
PS> dockerd --unregister-service
PS> dockerd -H npipe:// -H 0.0.0.0:2375 --register-service
PS> Start-Service docker

Проверяем:

PS> docker version

Теперь можем работать как с Docker, только в Windows. Смотрим готовые образы в репозитарии Docker.

install docker windows

PS> docker search microsoft

Получаем (необязательное действие) и запускае(смм нужный:

PS> docker pull microsoft/windowsservercore
PS> docker run -it --name demo microsoft/iis powershell

Получаем в результате доступ к командной строке PowerShell (вариант использование cmd вместо powershell). Если нужен контейнер Hyper-V то добавляем параметр —isolation=hyperv. Перенаправление портов работает также как и в Docker -p 80:80. Выполняем все настройки, выходим и сохраняем результат в образ.

PS C:\> exit
PS> docker commit demo demo-1

Использовав docker push, можем отправить новый образ в облако Docker. Команда «docker ps -a» покажет все запущенные контейнеры. Установленные в локальной системе образы выводятся при помощи команды.

PS> docker images

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

Услуги DevOps администратора, установка и настройка docker, поддержка, подробнее [email protected]

Оставить комментарий

Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.