Облачная операционная система — конкурс пет-проектов
За три года написал свою облачную операционную систему на собственном языке программирования.
640 открытий4К показов
Идея создать облачную операционную систему у меня возникла давно. После знакомства с докером, я понял, что это очень перспективная технология. Но есть несколько нюансов:
- Непонятно, как сделать HTTP-маршрутизацию. Нужно ставить отдельно Traefik или аналог и с ним разбираться. А так, чтобы из коробки, такое не поддерживается.
- Не хватает правильного веб-интерфейса. Чтобы мышкой можно было тыкать и быстро запускать докер-среду с нужными контейнерами. Есть Portainer, но мне он не понравился. Там по сути мышкой создается yaml-файл. Но это неудобно. Хочется просто взять и сказать докеру: «Запусти MySQL, а вот c этими yaml-файлами сам разберись».
- Я тогда занимался автоматизацией бизнес-проектов, ставил разные CRM, настраивал сервера, поднимал корпоративные почты. Поднять свою почту еще та задача. Обычно это несколько недель работы. А вот есть ли нормальная готовая сборка почты под докер?
Помимо почты, бизнес хотел еще CRM, свою вики, таск-менеджер, и все это на одном домене, на своем сервере, с единой авторизацией. И как такое сделать? Есть ли готовые opensource решения? У меня появилась идея. Давайте создадим такую систему.
На протяжении последних трех лет я разрабатывал ее один, в свободное от работы время. И спустя годы разработок, тестирования и апробации, я создал облачную ОС и назвал ее BAYRELL Cloud OS.
Облачная ОС разработана на языке Bay Lang, который я создал до этого. Идея создать Bay Lang появилась еще раньше, в далеком 2016 году, когда я задался вопросом, а как запустить React на PHP? Варианта два: либо делать бэкенд на PHP как микросервис, либо V8js.
Но меня эти два варианта не устраивали, и я решил разработать шаблонизатор для PHP, который также умеет в реактивность в JS. И вскоре шаблонизатор превратился в язык программирования Bay Lang. На разработку языка программирования ушло примерно семь лет. В нем было около 11 версий.
Сейчас Bay Lang является тьюринг-полным языком программирования. Он умеет:
- Конвертировать программу в PHP для бэкенда и JS-фронтенда.
- В реактивность, как у современных фреймворков Vue.js и React.
- Server Side Render.
Свой язык программирования я апробировал, разработав саму облачную ОС и сайт для нее.
Облачная ОС, на сегодняшний момент:
- Управляет докер-контейнерами на сервере.
- Обладает веб интерфейсом, где можно мышкой запускать WordPress, MySQL, PHP и т.п.
- Может использоваться как облачный аналог Denwer, XAMPP.
- Обладает маркетплейсом, в который я собрал различные контейнеры, которые использую у себя на тестовом сервере.
- Также сейчас активно используется в качестве среды разработки. В облачной ОС есть веб-версия VSCode, которую можно установить себе на сервер, и прямо на там вести разработку микросервисов.
- Можно взять игровой компьютер, установить туда облачную ОС, и через браузер с планшета обучать модели ИИ на PyTorch. Это такой собственный локальный аналог гугл-колаба на минималках.
Я рассказывал об облачной ОС своим друзьям и знакомым, и давал им ее попробовать. Они отмечают, что с помощью нее удобно управлять докер-контейнерами, но не хватает пошаговых инструкций по установке и использованию. А также побольше софта в маркетплейсе.
Я планирую их создать в ближайшем будущем.
Облачная ОС доступна на гитхабе https://github.com/bayrell-os
Сайт проекта: https://cloud.bayrell.org/ru/
На сайте находится маркетплейс и базовые инструкции как установить Облачную ОС.
Пожалуйста, расскажите в комментариях, что вы думаете по этому поводу, и что еще можно добавить в Облачную ОС?
640 открытий4К показов