Jan Serverは単一のアプリケーションではなく複数サービスからなるプラットフォームであり、要件もそれを反映しています。プロジェクトのREADMEは下限を最低8 GB RAM、推奨12 GBとしており、これによって格安VPS比較の主役である4 GBのプランは選択肢から外れます。
以下ではこの数字を内訳に分け、構成が変わったときにどこが動くのかを示します。
メモリの内訳
既定の構成ではおよそ9つのコンテナが起動します。個々は巨大ではありませんが、積み上がると効いてきます。
- Goのマイクロサービス群:LLM API、Response API、Media API、MCPツール、そしてサービステンプレート
- PostgreSQL:会話とメッセージの永続化
- Keycloak:
quay.io/keycloak/keycloak:24.0.5で動くOIDC認証。無視できないメモリを使うJVMアプリケーションです - Kong v3.5:すべてのリクエストを検証するAPIゲートウェイ
- Webチャットのフロントエンド:3001番ポートで動くReactアプリ
4 GBを窮屈にしている2つはKeycloakとPostgresです。8 GBのサーバーならスタックは余裕をもって動きますが、それを下回るとコンテナが起動中にOOMで落とされ、メモリの問題というより不規則なクラッシュのように見えます。
12 GBという推奨は、Media APIとOpenTelemetry、Prometheus、Jaeger、Grafanaからなる任意の可観測性スタックを含め、すべてを有効にした場合に当てはまります。
CPU
GoのサービスはCPUに縛られていません。時間の大半はデータベースと、設定したモデルのエンドポイントを待つことに費やされます。そのためスタック全体でも4 vCPUあれば余裕があり、単一ユーザーの構成なら2 vCPUで足ります。
推論を同じマシンで走らせるなら話はまったく変わります。CPU版のvLLMプロファイルはまさにそれを可能にするためにあり、与えたコアをすべて使い切りながら、GPUよりはるかに遅くトークンを生成します。CPU推論は構成が動くことを確かめる手段と考え、人に使ってもらう構成とは考えないでください。
ディスク
リモート推論なら最低40 GBを見込んでください。消費するのは次の3つです。
- コンテナイメージ:各サービス、Keycloak、Kong、Postgresを合わせて数ギガバイト
- PostgreSQLのデータ:会話とメッセージの履歴とともに成長します
- メディアの保存領域:Media APIを有効にし、ファイルをS3ではなくローカルに置く場合のみ
読みにくいのはローカルのモデルの重みです。vLLMプロファイルの既定モデルjanhq/Jan-v1-4Bは控えめですが、それでもモデルキャッシュ用のボリュームは小さなディスクを埋める最短経路です。ローカル推論が少しでも計画にあるなら、100 GBから始めてください。
GPU
必要なのはvLLMのGPUプロファイルだけです。このプロファイルはComposeのdeploy.resourcesブロックを通じてNVIDIAデバイスを確保し、デバイスがなければ起動を拒否します。以下のプロバイダーの標準的なVPSプランにGPUは含まれないため、現実的な選択肢はリモートのOpenAI互換エンドポイント、遅いCPUプロファイル、あるいはJan Serverから呼び出す別のGPUホストのいずれかになります。
要件に照らした各社のエントリープラン
| プロバイダー | エントリープラン | RAM | CPU | ディスク | 8 GBの下限を満たすか |
|---|---|---|---|---|---|
| Contabo | Cloud VPS 4——税抜 5.50 EUR/月 | 8 GB | 4 vCPU | 100 GB SSD | 満たす |
| Hetzner | CX23——税抜 5.49 EUR/月 | 4 GB | 2 vCPU | 40 GB NVMe | 満たさない。CX33へ |
| DigitalOcean | Basic Droplet——6 USD/月 | 1 GB | 1 vCPU | 25 GB SSD | 満たさない |
| Vultr | Cloud Compute——5 USD/月 | 1 GB | 1 vCPU | 25 GB SSD | 満たさない |
| Linode | Nanode——5 USD/月 | 1 GB | 1 vCPU | 25 GB SSD | 満たさない |
この一覧で条件を満たすエントリープランは1つだけです。Contaboの最安ティアはラインナップの改称以降8 GBで、この価格帯では珍しく、Jan Serverの既定の推奨になります。Hetznerは税抜8.49 EUR/月のCX33で同じ8 GBに届きますが、100 GBのSATA SSDではなく80 GBのNVMeです。
米国勢はいずれも1 GBから始まるため、そこでJan Serverを動かすということはエントリープランを買うのではなく、数段上へ登ることを意味します。
見積もりのまとめ
| 構成 | RAM | vCPU | ディスク |
|---|---|---|---|
| 単一ユーザー、リモート推論 | 8 GB | 2 | 40 GB |
| チーム利用、全サービス有効 | 12 GB | 4 | 80 GB |
| ローカルCPU推論、検証のみ | 12 GB以上 | 4以上 | 100 GB |
| ローカルGPU推論 | モデル次第 | モデル次第 | 100 GB以上とNVIDIA GPU |
推論をどう動かすつもりかに合う行を選んでください。そして8 GBという数字は、余裕のある目標ではなく文書化された最小要件である点を忘れないでください。各社の最新のプランと価格はVPS比較をご覧ください。
Frequently asked questions
VPSでJan Serverを動かすための最小RAMはどれくらいですか?
8ギガバイトです。この数字はプロジェクト自身のREADMEに基づくもので、同じ文書はサービス一式を余裕をもって動かすなら12 GBを推奨しています。Goのマイクロサービス群、Postgres、Keycloak、Kongゲートウェイを対象としており、推論は同じマシンではなく別の場所で行われる前提です。
Jan Serverにはどれくらいのディスク容量を割り当てるべきですか?
リモートの推論エンドポイントを使うなら40 GBから始めてください。コンテナイメージだけでも、各サービス、Postgres、Keycloak、Kongを合わせて数ギガバイトになり、そこからPostgresが会話履歴とともに成長します。Media APIをローカルストレージで有効にしたり、モデルの重みをキャッシュしたりすると、この数字は大きく変わります。
Jan ServerにNVIDIAのGPUは必要ですか?
推論をローカルのvLLM GPUプロファイルで実行する場合にだけ必要です。このプロファイルはNVIDIAデバイスを確保し、デバイスがなければ起動しません。Jan ServerをリモートのOpenAI互換エンドポイントに向ければこの要件は完全になくなり、VPS上ではそちらが通常の構成です。