Notariumドキュメント
ドキュメントのバージョン: latest

インストールと起動

Notarium は単一の自己完結型イメージとして配布されます。ひとつのプロセスが Web インターフェース、REST API、エージェント向けの MCP エンドポイントを提供し、ナレッジエンジンはそのすぐ内側で動きます。外部サービスは一切不要で、データベースもメッセージブローカーも独立した検索エンジンもいりません。始めるのに必要なのは Docker と空いているポートだけです。

このページは最短ルートです。インスタンスを立ち上げ、ブラウザで開き、オーナーを作成します。本格的なセルフホスト(Postgres、リバースプロキシ、本番構成)は セルフホスト セクションで扱います。

必要なもの

  • Docker(または Docker Desktop)。ほかに入れるものはありません。Node もデータベースも検索インデックスも、すでにイメージの中にあります。
  • 空いているポート。デフォルトは 3000 です。
  • ノートと派生インデックスのための、少しのディスク領域。

単一コンテナで起動する

最短ルートは、ビルド済みの docouno/notarium イメージを実行することです。

docker run -d --name notarium \
  -p 3000:3000 \
  -v notarium-data:/data \
  docouno/notarium:latest

数秒後に http://localhost:3000 を開きます。

/data というひとつのボリュームがすべての状態を保持します。メタデータデータベース、各種インデックス、あなたのノート、エクスポート成果物です。ほかに設定するものはありません。ポート 3000 と /data パスはすでにイメージに焼き込まれています。3000 の左側のポートは、任意の空きポートに変更できます。

ソースからのビルド

イメージがまだレジストリから取得されていない場合は、Notarium の本体リポジトリで make up を使ってソースからビルドしてください(下記参照)。挙動は同一です。

もうひとつの方法は、Docker まわりのすべてを担う単一のエントリポイントである make を使ってソースからビルドすることです。

cp .env.example .env   # デフォルトのままで動く — 何も記入する必要はない
make up                # 本番イメージをビルドして起動する → http://localhost:3000

日々の運用にはほかのコマンドも役立ちます。make logs でログ、make ps でステータス、make down で停止と削除、make sh でコンテナ内のシェルです。

ボリューム: データはどこにあるか

すべての状態はひとつのボリュームに収まります。コンテナを作り直すときに守るべきなのは、これだけです。

ボリュームマウントポイント保存するもの
notarium-data/dataすべて: あなたのノート(/data/spaces)、メタデータデータベース(/data/meta.db)、派生した検索インデックス(/data/engine)、エクスポート成果物(/data/jobs)

核心となる原則はファイルファーストです。真実の源は /data/spaces にある .md ファイルです。/data/engine にある検索インデックスとグラフは派生物で、ファイルから再構築されるため、失っても再インデックスで戻せます。一方、メタデータデータベース /data/meta.db(バージョン履歴、ユーザー、アクセス権)はボリュームの中だけに存在するので、/data はノートと同じくらい大切に扱ってください。バックアップに必須なのはあなたのノートと meta.db だけで、派生インデックスは含めなくてかまいません。

自分のポート

3000 ポートは -p <自分のポート>:3000 の左側(または .envPORT 変数)で変更します。イメージはコンテナのすべてのインターフェースで待ち受けますが、外に出るのはあなたがマッピングした分だけです。

初回起動: セットアップ画面

初めてアクセスすると、Notarium はセットアップ画面で出迎えます。あらかじめ設定されたパスワードはありません。最初の訪問者がインスタンスのオーナーを作成し、そのアカウントが管理者となり、作成されるスペースのオーナーになります。その後セットアップは二度と開かず、あなたはすでに自分の個人スペースの中にいるエディタへ着地します。

これがデフォルトの認証モード AUTH_MODE=password の動きです。これは公開到達可能なインスタンスを想定しています。ログイン、セッション、エージェント向けの個人トークンです。もうひとつのモード none(全アクセス権を持つ単一のプリンシパル、ログイン画面なし)は、デスクトップ、ローカル開発、閉じたイントラネットといった信頼できる環境にのみ適します。詳細は 認証 セクションにあります。

基本の設定

デフォルトはゼロコンフィグで、始めるにはイメージそのままで十分です。細かな調整は環境変数で行います(Docker では .env がそれらを渡し、イメージには何も焼き込まれません)。

変数デフォルト
PORTサーバーが待ち受けるポート3000
AUTH_MODEpassword(ログイン + セットアップ)または none(信頼できる環境)password
VECTOR_SEARCH全文検索(字句検索)に加えてセマンティック検索(ベクトル検索)を有効にするイメージでは off

全文検索(字句検索)は常に、設定なしで動きます。セマンティック検索(ベクトル検索)は VECTOR_SEARCH=on フラグで任意に有効化します。これはローカルの埋め込みモデル(数百メガバイト単位の RAM)を引き込むため、公開イメージではオフで、意図的にオンにする必要があります。これがなくても検索は全文に対して動き続けます。エラーにはならず、これが通常のモードです。変数の一覧と検索のセットアップは 構成検索のセットアップ のセクションにあります。

次のステップ

インスタンスが立ち上がり、オーナーが作成されました。ナレッジベースを満たし、それをエージェントに開放する番です。

モデル全体を理解したいですか。コンセプト セクションをご覧ください。スペース、ノートの種類、グラフ、アクセスモデルを扱います。