KasHost — личный хостинг с админ‑панелью и API‑узлом
Собственная хостинг‑панель / PaaS‑система для удалённого управления проектами и узлами. Админ‑панель работает как remote‑роутер: позволяет переключаться между несколькими узлами на разных устройствах (ПК, Termux на мобильных устройствах и т.п.) и управлять их проектами из одного интерфейса.
Ключевой функционал:
- Поддержка нескольких узлов: переключение между устройствами с установленным узлом, у каждой свой набор проектов и конфигураций.
- Полное управление процессами: запуск, остановка, перезапуск, просмотр статусов и логов для каждого проекта.
- Файловый менеджер: удалённое управление файловой системой устройств с узлом (просмотр, загрузка, удаление, редактирование) — есть как отдельная вкладка в боковом меню, так и файловый блок на странице конкретного проекта.
- Удалённые обновления узлов: обновление прямо из панели с авто‑бэкапом перед применением. Просто загружаешь архив с новой версией — узел обновляется и при этом всегда можно откатиться.
- Безопасность и подготовка к продакшену: система пользовательских аккаунтов, пользовательские токены и мастер‑токены для управления доступом.
- Специальная логика для Minecraft‑серверов: работа со списком плагинов, авто‑установка через API Modrinth и других сервисов, редактор server.properties и служебных конфигов.
- Поддержка разных типов проектов: управление зависимостями прямо из панели (установка/удаление), настройка пути к проекту, команды запуска и типа проекта.
- Режимы изоляции: без изоляции, изоляция через venv для Python‑проектов, планируется поддержка контейнеризации (Docker/PRoot) в зависимости от платформы.
Особенности архитектуры:
- Кроссплатформенный узел: тестировался на Windows, Linux (Ubuntu/VPS) и Termux на Android. Проект изначально проектировался с прицелом на запуск на разных устройствах — от домашнего ПК до удалённого сервера и мобильной ноды.
- Специальный режим локальной авторизации: в локальной среде к узлу можно подключаться из панели без мастер‑токена, используя упрощённый локальный токен, чего достаточно для локального использования. Для удалённых узлов используются мастер‑ и пользовательские токены.
- Расширяемость: панель изначально задумывалась как основа для публичного хостинга — архитектура учитывает добавление новых типов проектов и сценариев деплоя. В текущей версии используется как приватный хостинг.
Проект развивается примерно год: изначально начинался как внутренняя панель для управления одной нодой, со временем был переработан в кроссплатформенную PaaS‑систему с поддержкой нескольких узлов, безопасностью, удалёнными обновлениями и специализированными сценариями (например, для Minecraft‑серверов).
#backend #nodejs #typescript #docker #paas #adminpanel #api #devops
Ключевой функционал:
- Поддержка нескольких узлов: переключение между устройствами с установленным узлом, у каждой свой набор проектов и конфигураций.
- Полное управление процессами: запуск, остановка, перезапуск, просмотр статусов и логов для каждого проекта.
- Файловый менеджер: удалённое управление файловой системой устройств с узлом (просмотр, загрузка, удаление, редактирование) — есть как отдельная вкладка в боковом меню, так и файловый блок на странице конкретного проекта.
- Удалённые обновления узлов: обновление прямо из панели с авто‑бэкапом перед применением. Просто загружаешь архив с новой версией — узел обновляется и при этом всегда можно откатиться.
- Безопасность и подготовка к продакшену: система пользовательских аккаунтов, пользовательские токены и мастер‑токены для управления доступом.
- Специальная логика для Minecraft‑серверов: работа со списком плагинов, авто‑установка через API Modrinth и других сервисов, редактор server.properties и служебных конфигов.
- Поддержка разных типов проектов: управление зависимостями прямо из панели (установка/удаление), настройка пути к проекту, команды запуска и типа проекта.
- Режимы изоляции: без изоляции, изоляция через venv для Python‑проектов, планируется поддержка контейнеризации (Docker/PRoot) в зависимости от платформы.
Особенности архитектуры:
- Кроссплатформенный узел: тестировался на Windows, Linux (Ubuntu/VPS) и Termux на Android. Проект изначально проектировался с прицелом на запуск на разных устройствах — от домашнего ПК до удалённого сервера и мобильной ноды.
- Специальный режим локальной авторизации: в локальной среде к узлу можно подключаться из панели без мастер‑токена, используя упрощённый локальный токен, чего достаточно для локального использования. Для удалённых узлов используются мастер‑ и пользовательские токены.
- Расширяемость: панель изначально задумывалась как основа для публичного хостинга — архитектура учитывает добавление новых типов проектов и сценариев деплоя. В текущей версии используется как приватный хостинг.
Проект развивается примерно год: изначально начинался как внутренняя панель для управления одной нодой, со временем был переработан в кроссплатформенную PaaS‑систему с поддержкой нескольких узлов, безопасностью, удалёнными обновлениями и специализированными сценариями (например, для Minecraft‑серверов).
#backend #nodejs #typescript #docker #paas #adminpanel #api #devops