По умолчанию на 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

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

Login

Welcome to Typer

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