メインコンテンツへスキップ

システム要件

  • CPU: 2コア以上 - RAM: 8GB以上 - ストレージ: 60GB以上の空き容量
  • Docker(最新の安定版)
  • Node.js(最新のLTSバージョン)
  • YarnまたはNPM(最新の安定版)
  • ドメイン名または固定IP(外部デプロイの場合)
  • 3000: Kodus Web App
  • 3001: API
  • 3332: Webhooks
  • 5672, 15672, 15692: RabbitMQ(AMQP、管理、メトリクス)
  • 3101: MCP Manager(API、メトリクス)
  • 5432: PostgreSQL - 27017: MongoDB
クラウドベースのGitサービス(GitHub、GitLab、Bitbucket)やクラウドLLMプロバイダー(OpenAI、Anthropicなど)に接続する場合は、インターネットアクセスが必要です。 ネットワーク内の自己ホスト型GitツールやオンプレミスLLMを使用する場合、外部インターネットアクセスはオプションです。

ドメイン名の設定(オプション)

クラウドベースのGitプロバイダー(GitHub、GitLab、Bitbucket)とKodusを統合する予定がある場合は、Kodus WebアプリとそのAPI両方に公開URLが必要です。これにより、サーバーがコードレビュー機能に必要なwebhookを受信できるようになり、アプリケーションが正しく動作します。 2つのサブドメインを設定することをお勧めします:
  • Webアプリケーション用(例:kodus-web.yourdomain.com
  • API用(例:kodus-api.yourdomain.com
Webhookは別サービス(ポート3332)で処理されます。以下のいずれかを選択できます:
  • 専用のwebhookサブドメインを使用する(例:kodus-webhooks.yourdomain.com
  • APIドメインを引き続き使用し、リバースプロキシで/github/webhook/gitlab/webhookなどをwebhookサービスにルーティングする
両方のサブドメインのDNS Aレコードをサーバーのipアドレスに向ける必要があります。このガイドの後半で、これらのサブドメインへのリクエストを正しい内部サービスにルーティングするリバースプロキシ(Nginx)を設定します。この設定はwebhookや認証を含む完全な機能に不可欠です。
注意: ネットワーク内の自己ホスト型Gitツールのみに接続し、公開アクセスやwebhookが不要な場合は、よりシンプルな設定が可能ですが、このガイドは公開デプロイに焦点を当てています。

セットアップ

1

インストーラーリポジトリをクローン

git clone https://github.com/kodustech/kodus-installer.git
cd kodus-installer
2

環境変数ファイルのサンプルをコピー

cp .env.example .env
3

必要な環境変数のセキュアキーを生成

./generate-keys.sh
4

環境変数ファイルを編集

お好みのテキストエディタで.envに値を設定します。
nano .env
詳細な手順については、環境変数の設定を参照してください。
5

インストーラーを実行

./scripts/install.sh
6

完了 🎉

完了すると、Kodusサービスがマシン上で実行されます。 以下のスクリプトでインストールを確認できます:
./scripts/doctor.sh
7

Webインターフェースにアクセス

Webインターフェースに初めてアクセスする際は、以下の設定が必要です:
  1. 管理者アカウントの作成 - システムへのフルアクセス権を持つ最初のユーザーになります
  2. Gitプロバイダーの設定 - 画面の指示に従ってGitHub、GitLab、またはBitbucketを接続します
  3. リポジトリの選択 - Kodyがレビューするコードリポジトリを選択します
初期設定プロセスの詳細な手順については、クイックスタートガイドを参照してください。

環境変数の設定

このセクションを使用して.envを入力してください。まずパブリックURLから始め、次にデータベースとRabbitMQを設定し、最後にプロバイダー固有の設定を追加します。

ネームスペースの設定

これらの設定は、WebアプリとAPIが使用するパブリックURLとホストバインディングを定義します。 MCP Managerを使用しない場合は、ここのMCPエントリと下の完全なブロックをスキップできます。
WEB_HOSTNAME_API="kodus-api.yourdomain.com"    # パブリックAPIホスト名 (例: kodus-api.yourdomain.com)
NEXTAUTH_URL="https://kodus-web.yourdomain.com" # WebアプリのフルパブリックベースURL (例: https://kodus-web.yourdomain.com)
API_HOST=0.0.0.0                              # APIホスト (ローカル開発では0.0.0.0)

# MCPの機能を使用したい場合のみ必要
API_KODUS_SERVICE_MCP_MANAGER=http://kodus-mcp-manager:3101 # MCP Manager URL
API_KODUS_MCP_SERVER_URL=http://kodus-api.yourdomain.com/mcp # Kodus MCP Server URL

LLMプロバイダーの設定

API_LLM_PROVIDER_MODEL="gpt-5"     # 使用したいモデル
API_OPENAI_FORCE_BASE_URL="https://your-api.com/v1"  # APIプロバイダーのURL
API_OPEN_AI_API_KEY="your-api-key"          # APIプロバイダーのキー
Novita、OpenAI、Anthropicなどの人気プロバイダーの詳細なセットアップ手順については、モデル固有のガイドをご確認ください。

データベースの設定

デフォルトではPostgresとMongoDBにローカルコンテナを使用します。セキュリティ要件に合わせて認証情報を更新してください。
# PostgresとMongoDBにローカルコンテナを使用
USE_LOCAL_DB=true

# PostgreSQL設定
API_DATABASE_ENV="development"                # development, production, test
API_PG_DB_HOST=db_kodus_postgres              # PostgreSQLホスト
API_PG_DB_PORT=5432                          # PostgreSQLポート
API_PG_DB_USERNAME=kodusdev                  # データベースユーザー名
API_PG_DB_PASSWORD=                          # データベースパスワード
API_PG_DB_DATABASE=kodus_db                  # データベース名

# MongoDB設定
API_MG_DB_HOST=db_kodus_mongodb              # MongoDBホスト
API_MG_DB_PORT=27017                         # MongoDBポート
API_MG_DB_USERNAME=kodusdev                  # データベースユーザー名
API_MG_DB_PASSWORD=                          # データベースパスワード
API_MG_DB_DATABASE=kodus                     # データベース名
API_MG_DB_PRODUCTION_CONFIG=''               # 追加の本番設定

RabbitMQの設定

RabbitMQは2.0で必須です。URIを以下の値と同期させてください。
# RabbitMQの設定
USE_LOCAL_RABBITMQ=true
RABBITMQ_HOSTNAME=rabbitmq                   # DockerネットワークのRabbitMQホスト名
RABBITMQ_DEFAULT_USER=kodus                  # RabbitMQユーザー(本番では変更してください)
RABBITMQ_DEFAULT_PASS=kodus                  # RabbitMQパスワード(本番では変更してください)

# URIを上記のユーザー、パスワード、vhostと同期させてください
API_RABBITMQ_URI=amqp://kodus:kodus@rabbitmq:5672/kodus-ai # RabbitMQ接続URI
API_RABBITMQ_ENABLED=true                    # RabbitMQは必須

Gitプロバイダーの設定

お好みのGitプロバイダーを選択して設定してください。1つ以上のプロバイダーを設定できます。基本的なトークンベース認証には、Webhook URLのみが必要です。
WebhooksはWebhooks(ポート3332)というサービスが処理します。Webhook URLはそのサービスに到達できる必要があります。専用のWebhooksドメインを使用するか、APIドメインを保持してリバースプロキシで/.../webhookパスをWebhooksサービスにルーティングすることができます。 GitHub または GitLab OAuthをお使いの場合は、GitHub OAuthアプリまたはGitLab OAuthアプリをご覧ください。GitHub Appのセットアップについては、GitHub Appをご覧ください。
# トークンベース認証に必要
API_GITHUB_CODE_MANAGEMENT_WEBHOOK="https://kodus-api.yourdomain.com/github/webhook"          # Webhook URL(WebhooksドメインまたはWebhooksサービスにプロキシされたAPIドメインを使用)

MCP Managerの設定

MCP Managerを使用したい場合のみ必要です。
MCP Managerは、KodyExternalを外部ツールに接続し、Pluginsスクリーンに公開するサービスです。詳細についてはMCP Managerのドキュメントを参照してください。
API_MCP_SERVER_ENABLED=false # MCP Managerを使用したい場合はtrueに変更
---
API_KODUS_SERVICE_MCP_MANAGER=http://kodus-mcp-manager:3101
API_KODUS_MCP_SERVER_URL=http://localhost:3001/mcp

# MCP Managerの設定
API_MCP_MANAGER_LOG_LEVEL=info
API_MCP_MANAGER_PORT=3101
API_MCP_MANAGER_NODE_ENV=development
API_MCP_MANAGER_DATABASE_ENV=development
API_MCP_MANAGER_CORS_ORIGINS=*
API_MCP_MANAGER_JWT_SECRET=
API_MCP_MANAGER_COMPOSIO_BASE_URL=https://backend.composio.dev/api/v3
API_MCP_MANAGER_COMPOSIO_API_KEY=
API_MCP_MANAGER_MCP_PROVIDERS=kodusmcp,composio,custom
API_MCP_MANAGER_REDIRECT_URI=http://localhost:3000/setup/mcp/oauth
API_MCP_MANAGER_PG_DB_SCHEMA=mcp-manager
API_MCP_MANAGER_ENCRYPTION_SECRET=

ASTコードレビューの設定

AST搭載のコードレビューを有効にしたい場合のみ必要です。
ASTサービスは、レビューパイプラインに到達する前にコードファイルを解析、トリミング、操作します。これによりレビューの品質が向上し、トークンの消費量が削減されます。インストーラーに含まれており、別個のコンテナとして実行されます。
API_ENABLE_CODE_REVIEW_AST=false  # AST搭載のコードレビューを有効にするにはtrueに設定
API_SERVICE_AST_URL=              # ASTサービスの内部URL
ASTサービスには独自の設定ブロックもあります。これらの値はインストーラーによって事前設定されますが、環境に合わせて調整できます:
# KODUS_SERVICE_AST
NODE_ENV=development
API_NODE_ENV=development
API_LOG_PRETTY=true
API_LOG_LEVEL=info

CONTAINER_NAME=kodus-service-ast
API_PORT=3002

# PostgreSQL — メインデータベース設定と同期させてください
API_DATABASE_ENV="development"
API_PG_DB_HOST=postgres
API_PG_DB_PORT=5432
API_PG_DB_USERNAME=                # API_PG_DB_USERNAMEと同じ
API_PG_DB_PASSWORD=                # API_PG_DB_PASSWORDと同じ
API_PG_DB_DATABASE=kodus_db
API_PG_DB_SCHEMA=kodus_workflow

# RabbitMQ — メインのRabbitMQ設定と同期させてください
RABBIT_URL=                        # 例: amqp://user:pass@rabbitmq:5672/vhost
RABBIT_RETRY_QUEUE=ast.jobs.retry.q
RABBIT_RETRY_TTL_MS=60000
RABBIT_PREFETCH=1
RABBIT_PUBLISH_TIMEOUT_MS=5000
RABBIT_SAC=false

# LangChain(オプション — トレース用)
LANGCHAIN_TRACING_V2=false
LANGCHAIN_API_KEY=
LANGCHAIN_PROJECT=kodus-service-ast

# 共有ストレージ
SHARED_STORAGE_PATH=/shared

# S3(オプション)
S3_ENABLED=false
S3_BUCKET_NAME=
AWS_REGION=

# グラフビルドオプション
ENABLE_INCREMENTAL_GRAPH=false
ENABLE_GRAPH_BENCHMARK=false
ENABLE_LIGHTWEIGHT_GRAPH=false

外部サービスの設定(オプション)

これらのサービスはオプションですが、KodusのコードレビューBIG品質を大幅に向上させます。それぞれのサービスでアカウントを作成してAPIキーを生成する必要があります。
E2BはKodusがレビュー中にコードを実行・検証するために使用するセキュアなサンドボックスを提供します。
  1. e2b.devでアカウントを作成
  2. ダッシュボードでAPIキーを生成
  3. .envに追加:
API_E2B_KEY=your-e2b-api-key
MorphLLMは高速かつ正確なコード編集のための特化モデルです。KodusはこれをRevvisionBの提案をより正確に適用するために使用します。
  1. morphllm.comでアカウントを作成
  2. ダッシュボードでAPIキーを生成
  3. .envに追加:
API_MORPHLLM_API_KEY=your-morphllm-api-key

サポートが必要ですか?

ファウンダーとの通話をスケジュールして、デプロイのサポートを受けましょう。

コミュニティでサポートを受ける

コミュニティに参加して、デプロイのサポートを受けましょう。