Назад | Перейти на главную страницу

Совместное использование контейнеров Linux и Windows на Windows Server 2019

Я использую последнюю версию docker EE на моем хосте Windows Server 2019, и у меня включена вложенная виртуализация (поскольку мой сервер Windows 2019 является виртуальной машиной), а также я установил Hyper-V.

Я хочу запускать контейнеры Linux и Windows вместе, я пробовал запустить контейнер ubuntu, но он не работает, и появляется сообщение об ошибке ниже.

C:> docker run -d --isolation=hyperv ubuntu:latest
"no matching manifest for windows/amd64 in the manifest list entries"

Можно ли запустить контейнер linux на хосте Windows Server, используя флаг изоляции = hyperv?

Если да, дайте мне знать, нужно ли мне выполнить какие-либо другие настройки или шаги для достижения этой цели (на моем хосте Windows Server включена функция Hyper-V и контейнеров)

Пожалуйста, предложите, есть ли какое-либо решение, возможно ли это достичь или нет.

https://devblogs.microsoft.com/premier-developer/running-docker-windows-and-linux-containers-simptingously/

Как указано в этом сообщении, такая функция все еще экспериментальная. Таким образом, вы должны позволить движку Docker работать в экспериментальном режиме, иначе вы получите сообщение об ошибке, например

> docker pull --platform=linux ubuntu
"--platform" is only supported on a Docker daemon with experimental features enabled

Чтобы включить экспериментальный режим ядра Docker, вы можете изменить файл конфигурации демона Docker в версии Docker Desktop Community,

{
  "registry-mirrors": [],
  "insecure-registries": [],
  "debug": true,
  "experimental": true
}

Не совсем уверен, каковы эквивалентные шаги для Docker EE, но наверняка вы сможете это узнать.