Я устанавливаю Docker для Windows (CE) в Windows 10, и на первом экране меня спрашивают:
[] Используйте контейнеры Windows вместо контейнеров Linux (это можно изменить после установки)
Это кажется важным решением, но Документация Docker, Вопросы-Ответы и Руководство по контейнеру Windows не предоставляет информации о Зачем Я могу предпочесть одно другому.
Было бы полезно получить объективный обзор последствий этого выбора:
Любые другие различия, которые могли бы помочь мне прийти к заключению, были бы очень приветствуются.
Вы ДОЛЖНЫ использовать хост Windows для контейнеров Windows, однако вы можете использовать хост Linux или хост Windows для контейнеров Linux. С апреля 2018 вы даже можете запускать оба параллельно.
Будет ли один вариант быстрее другого?
Нет. Быстрее при чем?
Влияет ли решение на использование системных ресурсов (RAM, CPU)?
Windows использует больше ресурсов, чем Linux - Windows Nano настолько мала, насколько это возможно
Могу ли я использовать одни и те же изображения для обоих типов?
Нет, вы можете запускать приложения .NET в моноконтейнерах, но вы не можете запускать контейнер Windows на хосте Linux и наоборот - это не то же самое, что виртуализация.
Один безопаснее другого?
Опять же - в чем безопасность? Нет. Они оба используют собственный Docker, так что это не что иное, как Hyper-v против VMware и больше похоже на Linux против Windows, поэтому все зависит от того, что вы собираетесь запускать .net, python, java, ruby и т.