Я ни разу не программист, только-только начинаю изучать веб-разработку. И вот столкнулся с контейнеризацией. Возник вопрос, а почему игры нельзя запускать из контейнера на Линукс, на котором игры не работают никакие? Знаю, что ответ скорее всего очевидный, но не получилось ответ найти.
на какое устройство вывода графики (экран) будет выводить картинку игра запущенная в контейнере?
если речь и приложении которое не требует вывода графики, например сервер какого нибудь майнкрафта, то они отлично запускаются в контейнерах.
Так контейнер не обеспечивает "запуск того что невозможно". Контейнер изолирует зависимости. Если зависимостей под хостовую ОС нет - то контейнер не поможет. На линуксе "игры не работают никакие" (что кстати неправда) потому, что там нет DirectX - потому что это майкрософт. А поддержка openGL всеми драйверами и видеокартами вызывает вопросики. Ну и основное- т.к. в целом аудитория линуксов меньше винды в домашней среде - то разработчики как игр, так и драйверов не парятся особо с поддержкой - т.е. просто у игры нет бинарника для запуска на линуксе.
Но - опять таки - это уже заблуждение из далекого прошлого - есть игры, и немало.
Для этого уже нужна виртуалка, и вполне под виртуалками запускают игры.
Steam благодаря proton (на основе wine) позволяет запускать без каких либо шевелений больше половины игр из ее базы (помимо ставишь steam с офф сайта, логинишься и играешь), возможно в настройках включить режим совместимости, и с оговорками большую часть остальных.
Сколько компания заплатила майкрософту что бы сделать свой steamdesk мы наверное не узнаем но наверное не мало
Мало того, есть SteamOS, что по сути тот же Linux, и поставив Steam на Linux можно запускать например Контру или Доту, которые сделали специально под Linux. Ну или запустить виндовые игрухи из Steam через его родную библиотеку совместимости - Proton. Ну и PortProton никто не отменял.