По умолчанию на Windows Server ставится движок докера, который поддерживает запуск только windows контейнеров. Поэтому пришлось поискать решение, как поставить и запустить в докере линукс контейнеры.

А Docker Enterprise Edition, который позволяет это делать из коробки, — он денег просит. Сколько — не знаю, но раз на сайте «Оставьте заявку», а не просто прайс с тремя-четырьмя вариантами, то дешево не будет 🙂

На stackoverflow есть инструкция с аагромным костылем, от 2016 года вроде, суть ее сводится к тому, что поставьте на обычную Windows 10 Docker Desktop, а потом проделайте махинации и подмените нужные файлы на сервере.

Но это уж слишком топорно, не наш путь 🙂

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

Она заключается в установке предварительной версии. Используем PowerShell от имени администратора:

# Delete current Docker Engine
Uninstall-Package -Name docker -ProviderName DockerMSFTProvider

# Install Docker Preview
# Предложит перезагрузиться - соглашаемся
Install-Module DockerProvider
Install-Package Docker -ProviderName DockerProvider -RequiredVersion preview

# Set Linux containers
[Environment]::SetEnvironmentVariable("LCOW_SUPPORTED", "1", "Machine")

# Docker restart
Restart-Service docker

Проверяем, что линукс контейнеры запускаются:

# Run ubuntu
docker run -it --rm ubuntu /bin/bash

Чтобы переключиться обратно на Windows контейнеры

# Set Windows containers
[Environment]::SetEnvironmentVariable("LCOW_SUPPORTED", "$null", "Machine")

P.S. Может потребоваться, чтобы был включен Hyper-V and Containers Windows features:

# To enable Hyper-V and Containers features using PowerShell, 
# run the following commands as Administrator.
# After running the commands, reboot your system.

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Enable-WindowsOptionalFeature -Online -FeatureName Containers -All

UPDATE: Оказалось, тут в коробке не идет Docker Compose. Как его поставить, разбираем тут: https://hackworlds.com/ustanovka-docker-compose-na-windows-server/

Нет комментариев
Комментарии к: Установка и запуск Linux контейнеров в Docker’е на Windows Server 2016 & 2019

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Attach images - Only PNG, JPG, JPEG and GIF are supported.

Good Reads

Worlwide

Trending

Login

Welcome to Typer

Brief and amiable onboarding is the first thing a new user sees in the theme.
Join Typer
Registration is closed.