Docker
Elowen neobsahuje udržovaný produkční Docker image ani Compose soubor. Pokud si ho zabalíte do kontejnerů, image, dohled nad procesy, síť i aktualizace máte na starosti Vy. Standardní instalátor místo toho používá nativní služby pod správou systemd.
Sestavte démona a webové rozhraní ze zdrojového checkoutu s verzí Node.js, kterou vyžaduje Instalace. Spouštějte démona a webové rozhraní jako dva samostatné dlouho běžící procesy, ve výchozím nastavení na portech 4400 a 4500, pokud ELOWEN_PORT nebo ELOWEN_WEB_PORT neříká jinak; zveřejněte jen port webového rozhraní. Démona nechte soukromého, pokud záměrně nepotřebujete přímý přístup; uživatelé se k němu běžně dostanou přes webové rozhraní a nastavenou reverzní proxy.
Zachovejte data mezi kontejnery
Elowen drží svůj stav na dvou místech. Obě je třeba uchovat.
- Databázi PostgreSQL, na kterou ukazuje
ELOWEN_DATABASE_URL. Obsahuje nastavení, účty a historii konverzací. Spouštějte ji jako samostatnou službu s trvalým svazkem. - Adresář instance,
ELOWEN_INSTANCE_ROOT, ve výchozím nastavení~/.config/elowen/($HOME/.config/elowen). Obsahuje značku dokončeného nastavení, předvolby CLI, uložené plány, šifrovací klíč pro přihlašovací údaje pluginůplugin-secrets.key,licence.json, adresář uživatelských pluginůplugins/, data pluginů vplugins-data/a běhové adresáře jakobrain/,marketplace/,update/,plugin-installs/,chat-images/achat-files/.
Databázový server musí být PostgreSQL 16 nebo novější, mít v databázi nainstalovaná rozšíření vector (0.7 nebo novější) a pg_trgm a mít pg_stat_statements v shared_preload_libraries. Role, se kterou se Elowen připojuje, musí umět vytvářet schémata, a URL, která se k databázi připojuje přes TCP, musí obsahovat sslmode=verify-full.
Adresář instance musí být absolutní cesta, která není kořenovým adresářem, proto ho připojte do podadresáře, například /var/lib/elowen, a ne do /elowen.
Databázi a adresář instance s šifrovacím klíčem zálohujte a obnovujte jako pár. Před změnou verze zálohujte obojí. Obnovená databáze bez svého klíče nepřečte uložené přihlašovací údaje pluginů.
Každý repozitář připojte do kontejneru na stabilní cestu a jako jeho Projekt zaregistrujte právě tuto cestu v kontejneru. Cesta na hostiteli a cesta v kontejneru jsou různá místa.
První spuštění a upgrady
Spusťte elowen setup s HOME nastaveným na trvalý svazek, aby se adresář instance ukládal tam, nebo nastavte ELOWEN_INSTANCE_ROOT na adresář na tomto svazku. Pro démona nastavte ELOWEN_DATABASE_URL. Při upgradu sestavte nový image a znovu vytvořte služby, přitom obě umístění zachovejte. Démon při startu provádí migrace databáze.
Viz Instalace a Produkce a aktualizace.