本文へスキップ
Lyra

セルフホスト

Docker Compose、Kubernetes、K3s、またはオフラインバンドルで、自分のインフラで Lyra を動かす。

Lyra は Apache-2.0 ライセンスのオープンソースです。すべてのデプロイ方法はリポジトリの deploy/ ディレクトリにあります。このページでは概要をまとめます。詳しい手順はリンク先のガイドに従ってください。

Lyra に必要なもの

  • MySQLRedis。Docker Compose と K3s なら両方を一緒に動かせます。
  • オブジェクトストレージ:ローカルのファイルシステムボリューム、または S3 互換の任意のサービス。
  • エージェントのサンドボックス用の OpenSandbox
  • 通話用の LiveKit。メディア用のポートを開けておく必要があります。
  • ウェブアプリの前段に HTTPS

Docker Compose

もっとも簡単な方法です。Docker、docker compose プラグイン、OpenSSL が入った Linux ホストが 1 台あれば動きます。

git clone https://github.com/AstraFoundry/Lyra.git && cd Lyra
cp .env.example .env   # set production secrets and public URLs
bash deploy/docker/lyra/deploy.sh build
bash deploy/docker/lyra/deploy.sh preflight
bash deploy/docker/lyra/deploy.sh up

up はイメージを再ビルドしないので、アップグレードは明示的に行います。使いたいイメージをビルドまたは読み込んでから、スタックを作り直します。日常的に使うコマンド:

bash deploy/docker/lyra/deploy.sh status
bash deploy/docker/lyra/deploy.sh logs lyra
bash deploy/docker/lyra/deploy.sh restart

通話を有効にする場合は、LiveKit と STUN のために 7881/tcp50100-50200/udp3478(TCP と UDP)を開けてください。

オフライン配布

レジストリにアクセスできないネットワーク向けには、接続できるホストでビルドしてパックします。

bash deploy/docker/lyra/deploy.sh build
bash deploy/docker/lyra/deploy.sh pack

deploy/docker/lyra/generated/lyra-deploy.tar.gz を対象のホストにコピーし、次を実行します。

tar -xzf lyra-deploy.tar.gz && cd lyra
cp .env.example .env
bash deploy/docker/lyra/deploy.sh load
bash deploy/docker/lyra/deploy.sh preflight
bash deploy/docker/lyra/deploy.sh up

INCLUDE_RUNTIME_IMAGES=false を設定しないかぎり、MySQL、Redis、LiveKit のランタイムイメージも含まれます。

Kubernetes

deploy/k8s/ のマニフェストは、Lyra の API、エージェントランタイム、ウェブのイメージを既存の名前空間にインストールします。MySQL、Redis、LiveKit、OpenSandbox、オプションの S3 ストレージは別途管理します。同じクラスターに OpenSandbox と LiveKit をインストールするガイドもリポジトリに含まれています。

K3s

deploy/k3s/ は、まっさらな Ubuntu または Debian のホストを、シングルノードの本番環境に仕上げます。K3s と Helm、MySQL と Redis、OpenSandbox、LiveKit、Lyra、TLS のイングレスを揃え、最後にサンドボックスのエンドツーエンドのスモークテストを実行します。

設定

すべての設定は環境変数で、.env.example に説明があります。本番運用の前に、少なくとも次を行ってください。

  • AUTH_SESSION_SECRET を強力なシークレットに置き換える
  • DATABASE_URLREDIS_URL を自分のサービスに向ける
  • WEB_ORIGIN をウェブアプリの公開 URL に設定する

モデルプロバイダーのキーとオブジェクトストレージは、デプロイ後に Lyra の設定で構成できます。シークレットは暗号化して保存されます。