Navigace
ELOWEN · Dokumentace

Poslední aktualizace: 20. října 2026

Procházet dokumentaci · Produkce a aktualizace
Začněte zde

Produkce a aktualizace

Pro trvale běžící instalaci použijte elowen install. Ten nastaví spravované služby. Webové rozhraní postavte za HTTPS a obecné API démona nechte soukromé, pokud přímý přístup není záměrný.

Nainstalujte na server

Na Debianu nebo Ubuntu s balíčkem nainstalovaným podle článku Instalace spusťte:

sudo elowen install

Než schválíte změny v systému, projděte si plán instalace. Instalátor umí nastavit uživatele služeb, přístup přes localhost nebo doménu, reverzní proxy, HTTPS a potřebné nástroje běhového prostředí. Všechny podporované volby vypíše elowen install --help. Při nasazení na doménu předejte --domain example.com.

Pokud je Elowen na počítači už nainstalovaný, zaváděcí skript si před přeinstalováním vyžádá potvrzení, protože přeinstalace znovu připraví běžící instanci. Bez terminálu odmítne a vypíše možnosti. Pokud přesto chcete přeinstalovat, nastavte ELOWEN_FORCE=1. Zdrojový checkout propojený přes npm link skript nikdy nepřeinstaluje, ani s ELOWEN_FORCE. Pro běžné upgrady používejte elowen update.

Zkontrolujte a restartujte služby

elowen status
elowen restart all

Restart démona krátce počká na probíhající tahy, uloží zbývající práci a po startu naváže na obnovitelnou práci. Vynucené zastavení může práci přerušit.

Stav služeb a záznamy na Linuxu zkontrolujete přes systemd:

sudo systemctl status elowen-daemon elowen-web
sudo journalctl -u elowen-daemon -f
sudo journalctl -u elowen-web -f

Ověřte restart

Po restartu ověřte, že obě služby jsou aktivní a že jejich adresy vracejí odpověď. Pokud Vaše reverzní proxy mění hostitele a porty, upravte je:

systemctl is-active elowen-daemon elowen-web
curl -fsS http://127.0.0.1:4400/health
curl -s -o /dev/null -w '%{http_code}\n' http://127.0.0.1:4500/chat

Potom v záznamu démona hledejte řádky paused in, boot recovery a plugin loaded. Řádek plugin skipped nebo ERROR znamená, že se nějaký plugin nespustil. Kontroly přes curl dokazují jen to, že adresy vracejí odpověď. Nic neříkají o tom, jak rozhraní vypadá a chová se, proto po každém restartu otevřete webové rozhraní a zkuste poslat zprávu.

Aktualizujte Elowen

U instalace z balíčku spusťte:

elowen update

Příkaz se zeptá licenčního serveru na nejnovější vydání, které licence pokrývá, a stahování ověří podle velikosti a kontrolního součtu. Stejný instalátor, který používá zaváděcí skript, spustí npm ci proti prověřenému produkčnímu locku vydání se zapnutými nativními skripty sestavení. Atomicky přepne odkaz spravovaného vydání, obnoví soubory vlastněné rootem a restartuje služby. Pokud kontroly při startu selžou, stávající záchranný žurnál obnoví předchozí vydání. Aktualizace jádra se nevrací jen proto, že místní databáze nemá schválenou politiku prostředků: srovnání politiku ohlásí jako řízenou provozovatelem a nastavení databáze nechá beze změny, zatímco odchylka v už schválené politice stále selže. Po úspěšných kontrolách zůstanou jen aktuální a předchozí vlastněné vydání. Po aktualizaci zkontrolujte elowen status.

Když uživatel služeb nemá do instalačního umístění právo zápisu, provede aktualizace svůj instalační krok jako root přes řádek v sudoers svázaný s tímto konkrétním příkazem a licenční token předá na standardním vstupu, nikoli jako argument. Po přechodu ze starší instalace jednou znovu spusťte sudo elowen install, aby se nový řádek v sudoers zapsal; bez něj se aktualizace vrátí k dotazu na heslo provozovatele.

Odmítnutá kontrola aktualizací selže a uvede důvod ze serveru, například odvolanou licenci, místo hlášení „již aktuální“. Místně propadlá licence aktualizaci zastaví, dokud ji neobnovíte. Když licenční server není dostupný, žádné vydání jádra se nenainstaluje a aktualizace ohlásí, že se server nepodařilo kontaktovat. Oprava privilegovaných souborů přesto proběhne, takže odchýlené soubory vlastněné rootem se srovnají a ohlásí jako obvykle. Zdrojový checkout vydání jádra přeskočí, ale pluginy od vydavatelů umí aktualizovat přes stejnou službu; zdrojový kód jádra aktualizujte přes git a znovu ho sestavte. Jeho aktualizační službu připravte po sestavení příkazem sudo elowen privileged refresh.

Zařazené požadavky na pluginy spouští elowen-update-coordinator.path, který připraví instalace nebo sudo elowen privileged refresh, včetně zdrojových checkoutů. Sledovač používá soubor požadavků instance, takže požadavky, které dorazí těsně před skončením předchozího běhu, se neztratí. Neúspěšné zveřejnění potvrzení zůstává obnovitelné a nepočítá se za dokončenou aktualizaci. Dokud transakce neskončí, změny pluginu, který transakce zpracovává, jsou odmítány.

Elowen čte jen žurnály aktualizací schématu 2. Instalace se starším žurnálem přechází ručně v odsouhlaseném okně se zastavenými službami: dokončete obnovu starším updaterem, ponechte odpovídající záchranné artefakty, archivujte jen prohlédnuté a prokazatelně ukončené staré žurnály a zprávy a potom nainstalujte odpovídající sadu jádra a pluginů a obnovte privilegované soubory. Nevynucujte automatický upgrade starého koordinátoru a nearchivujte aktivní žurnál.

Automatické aktualizace jsou volitelné. Kde jsou podporované, může je administrátor zapnout v Nastavení → Systém.

Sledujte průběh aktualizace

V Nastavení zvolte Systém a vyberte Aktualizovat teď. Panel Stav aktualizací ukazuje aktualizaci jádra a každý řádek pluginu ukazuje vlastní stav. Stavy, které můžete vidět, jdou v pořadí Ve frontě, Stahování balíčku, Příprava, Zastavování služeb, Provádění změn, Ověřování spuštění a Dokončování. Běh končí stavem Dokončeno. Potom každý řádek pluginu ukáže vlastní výsledek: Provedeno, když se plugin aktualizoval, nebo Přeskočeno, když ho Elowen z běhu záměrně vynechal, s uvedeným důvodem.

Ve frontě znamená, že Elowen požadavek přijal, ne že je instalace hotová. Elowen připraví stažení, zatímco instance obsluhuje požadavky, krátce zastaví dotčené služby, provede změny a ověří, že se nová sada spustí. Nezávislé služby pluginů mohou být i v tomto kroku krátce nedostupné. Počkejte na Dokončeno. Pokud kontrola selže, Obnovování předchozí verze a potom Vráceno na předchozí verzi ukazují, že se obnovuje předchozí sada. Důvod uvádí panel. Zablokováno před aktivací znamená, že se běh zastavil už při přípravě, před zastavením jakékoli služby, takže nainstalovaná verze se nezměnila.

Aktualizujte nebo opravte jeden plugin

V Nastavení zvolte Pluginy. Plugin s novější verzí nabídne v nabídce akcí Aktualizovat. Chcete-li najednou aktualizovat všechny pluginy s novější verzí, zvolte Aktualizovat všechny pluginy a potvrďte. Elowen aktualizuje zapnuté pluginy společně s jedním krátkým restartem, takže několik aktualizací nikdy neznamená několik restartů. Vypnuté pluginy zůstanou vypnuté a aktualizují se, až je zapnete. Pokud nová verze žádá další oprávnění, projděte si je a nejdřív je schvalte. Odmítnutí nechá stávající verzi pluginu beze změny.

Nainstalovaný plugin, který se nedokáže spustit, zůstane v seznamu jako Nenačteno, s důvodem a tlačítkem Opravit. Oprava jde stejnou frontou a stejnou kontrolou spuštění. Elowen také při startu požádá o opravu chybějících nebo nenačtených zapnutých pluginů od vydavatelů, ale u verze, jejíž kontrola spuštění už selhala, přestane opakovat pokusy. Pluginy vlastní organizace se jen ohlásí, nenahrazují se.

Požadavek může skončit stavem Vyžaduje souhlas, Chybí licence, Zrušeno před spuštěním, Nezdařilo se nebo Vyžaduje zásah správce. Než to zkusíte znovu, projděte si uvedený důvod. Zrušeno před spuštěním znamená, že tento požadavek nahradil novější požadavek nebo změněné schválené stažení dřív, než se spustil. Při stavu vyžadujícím zásah správce ponechte soubory aktualizace a použijte záchranný příkaz, nebo kontaktujte svého administrátora:

elowen update --recover

Ruční požadavky na instalaci, aktualizaci a opravu fungují i při vypnutých automatických aktualizacích. Změny běžné konfigurace pluginu nebo stavu zapnutí si zachovávají dosavadní chování s restartem démona. Připojení uživatelé chatu uvidí stávající oznámení o restartu; obnovitelná práce po startu pokračuje.

Zálohujte před upgradem

Elowen nemá vestavěný příkaz pro zálohu ani obnovu. Zálohujte databázi PostgreSQL a celý kořen instance (<dataDir>) jako jeden pár: databáze obnovená proti jinému kořeni instance nepřečte svá data pluginů, protože plugin-secrets.key leží v kořeni. Kořen obsahuje také licenční záznam, přihlašovací údaje poskytovatelů, data pluginů, přílohy a žurnál aktualizací; nainstalované služby drží své záznamy v adresáři protokolů, se kterým byly nastaveny. Databázi i kořen zálohujte se zastaveným Elowen, aby obě části popisovaly stejný stav. Příkazy najdete v článku Konfigurace.

Migrace databáze probíhají při startu démona. Ponechte si obnovitelnou zálohu a když se nová verze nespustí, projděte záznamy služeb. Neodstraňujte migrační ani zámkové soubory, abyste obešli neúspěšný upgrade.

Licence

Elowen se provozuje jen na Linuxu s Debianem nebo Ubuntu. Nainstalujte ho skriptem ze svého licenčního serveru a s aktivačním klíčem:

curl -fsSL https://<licence-server>/hooks/licensing/v1/install.sh | bash

Předběžná kontrola odmítne klíč, který je už svázaný s jiným strojem, dřív než na hostiteli něco změní. Aktivace licence váže licenci k jedné instanci a licenční kontroly probíhají pravidelně. Licence jsou podepsané Ed25519. Jádro obsahuje jen veřejný klíč a licenci ověřuje offline při startu. Bez platné licence démon neběží a neaktualizuje se. Katalog nabízí jen pluginy, které Vaše konkrétní licence povoluje. Aktualizace jádra přicházejí z licenčního serveru přes elowen update a pluginy se z něj také stahují. Nepoužívejte npm jako instalační ani distribuční kanál.

Podepisovací klíč licenčního pluginu leží ve Vašem datovém adresáři (<dataDir>). Mějte ho v záloze a nikdy ho nemažte ani neodinstalovávejte licenční plugin.

Elowen je dostupný jako zdrojový kód pod komerční licencí, nejde o veřejný open source. Verze už vydané pod MIT zůstávají MIT, novější verze jsou uzavřené. Balíček elowen v npm je zastaralý a značky last-mit označují poslední zdroj pod MIT. Další veřejná vydání v npm nejsou.

Další: Webové rozhraní