KasHost — osobisty hosting z panelem administracyjnym i węzłem API
Własny panel hostingowy / system PaaS do zdalnego zarządzania projektami i węzłami. Panel administracyjny działa jak zdalny router: pozwala przełączać się między wieloma węzłami na różnych urządzeniach (PC, Termux na urządzeniach mobilnych itp.) i zarządzać ich projektami z jednego interfejsu.
Kluczowa funkcjonalność:
- Wsparcie dla wielu węzłów: przełączanie między urządzeniami z zainstalowanym węzłem, każde z własnym zestawem projektów i konfiguracji.
- Pełne zarządzanie procesami: uruchamianie, zatrzymywanie, ponowne uruchamianie, przeglądanie statusów i logów dla każdego projektu.
- Menedżer plików: zdalne zarządzanie systemem plików urządzeń z węzłem (przeglądanie, pobieranie, usuwanie, edytowanie) — dostępne zarówno jako osobna zakładka w bocznym menu, jak i blok plików na stronie konkretnego projektu.
- Zdalne aktualizacje węzłów: aktualizacja bezpośrednio z panelu z automatycznym tworzeniem kopii zapasowej przed zastosowaniem. Wystarczy załadować archiwum z nową wersją — węzeł jest aktualizowany, a w każdej chwili można wrócić do poprzedniej wersji.
- Bezpieczeństwo i przygotowanie do produkcji: system kont użytkowników, tokeny użytkowników i tokeny główne do zarządzania dostępem.
- Specjalna logika dla serwerów Minecraft: praca z listą wtyczek, automatyczna instalacja przez API Modrinth i inne usługi, edytor server.properties i plików konfiguracyjnych.
- Wsparcie dla różnych typów projektów: zarządzanie zależnościami bezpośrednio z panelu (instalacja/usuwanie), konfiguracja ścieżki do projektu, komendy uruchamiające i typ projektu.
- Tryby izolacji: bez izolacji, izolacja przez venv dla projektów Python, planowane wsparcie dla konteneryzacji (Docker/PRoot) w zależności od platformy.
Cechy architektury:
- Węzeł wieloplatformowy: testowany na Windows, Linux (Ubuntu/VPS) i Termux na Androidzie. Projekt był pierwotnie projektowany z myślą o uruchamianiu na różnych urządzeniach — od domowego PC po zdalny serwer i mobilny węzeł.
- Specjalny tryb lokalnej autoryzacji: w lokalnym środowisku do węzła można podłączyć się z panelu bez tokena głównego, używając uproszczonego lokalnego tokena, co wystarcza do użytku lokalnego. Dla zdalnych węzłów używane są tokeny główne i użytkowników.
- Rozszerzalność: panel był pierwotnie zaprojektowany jako podstawa dla publicznego hostingu — architektura uwzględnia dodawanie nowych typów projektów i scenariuszy wdrożenia. W bieżącej wersji używany jako prywatny hosting.
Projekt rozwija się od około roku: początkowo zaczynał jako wewnętrzny panel do zarządzania jednym węzłem, z czasem został przekształcony w wieloplatformowy system PaaS z wsparciem dla wielu węzłów, bezpieczeństwem, zdalnymi aktualizacjami i specjalistycznymi scenariuszami (na przykład dla serwerów Minecraft).
#backend #nodejs #typescript #docker #paas #adminpanel #api #devops
Kluczowa funkcjonalność:
- Wsparcie dla wielu węzłów: przełączanie między urządzeniami z zainstalowanym węzłem, każde z własnym zestawem projektów i konfiguracji.
- Pełne zarządzanie procesami: uruchamianie, zatrzymywanie, ponowne uruchamianie, przeglądanie statusów i logów dla każdego projektu.
- Menedżer plików: zdalne zarządzanie systemem plików urządzeń z węzłem (przeglądanie, pobieranie, usuwanie, edytowanie) — dostępne zarówno jako osobna zakładka w bocznym menu, jak i blok plików na stronie konkretnego projektu.
- Zdalne aktualizacje węzłów: aktualizacja bezpośrednio z panelu z automatycznym tworzeniem kopii zapasowej przed zastosowaniem. Wystarczy załadować archiwum z nową wersją — węzeł jest aktualizowany, a w każdej chwili można wrócić do poprzedniej wersji.
- Bezpieczeństwo i przygotowanie do produkcji: system kont użytkowników, tokeny użytkowników i tokeny główne do zarządzania dostępem.
- Specjalna logika dla serwerów Minecraft: praca z listą wtyczek, automatyczna instalacja przez API Modrinth i inne usługi, edytor server.properties i plików konfiguracyjnych.
- Wsparcie dla różnych typów projektów: zarządzanie zależnościami bezpośrednio z panelu (instalacja/usuwanie), konfiguracja ścieżki do projektu, komendy uruchamiające i typ projektu.
- Tryby izolacji: bez izolacji, izolacja przez venv dla projektów Python, planowane wsparcie dla konteneryzacji (Docker/PRoot) w zależności od platformy.
Cechy architektury:
- Węzeł wieloplatformowy: testowany na Windows, Linux (Ubuntu/VPS) i Termux na Androidzie. Projekt był pierwotnie projektowany z myślą o uruchamianiu na różnych urządzeniach — od domowego PC po zdalny serwer i mobilny węzeł.
- Specjalny tryb lokalnej autoryzacji: w lokalnym środowisku do węzła można podłączyć się z panelu bez tokena głównego, używając uproszczonego lokalnego tokena, co wystarcza do użytku lokalnego. Dla zdalnych węzłów używane są tokeny główne i użytkowników.
- Rozszerzalność: panel był pierwotnie zaprojektowany jako podstawa dla publicznego hostingu — architektura uwzględnia dodawanie nowych typów projektów i scenariuszy wdrożenia. W bieżącej wersji używany jako prywatny hosting.
Projekt rozwija się od około roku: początkowo zaczynał jako wewnętrzny panel do zarządzania jednym węzłem, z czasem został przekształcony w wieloplatformowy system PaaS z wsparciem dla wielu węzłów, bezpieczeństwem, zdalnymi aktualizacjami i specjalistycznymi scenariuszami (na przykład dla serwerów Minecraft).
#backend #nodejs #typescript #docker #paas #adminpanel #api #devops