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

構成管理

初めてインストールしますか? Docker Compose インストールガイドに従ってTwentyを起動し、その後はここに戻り構成してください。
Twentyは、異なる展開ニーズに合わせて2つの構成モードを提供します: 管理パネルアクセス: 管理者権限を持つユーザーだけが (canAccessFullAdminPanel: true) 構成インターフェースにアクセスできます。

1. 管理パネル構成(デフォルト)

IS_CONFIG_VARIABLES_IN_DB_ENABLED=true  # default
ほとんどの構成は、インストール後にUIを通じて行われます。
  1. Twentyインスタンスにアクセスしてください (通常は http://localhost:3000)
  2. 設定 / 管理パネル / 構成変数に移動
  3. 統合、メール、ストレージなどを構成します
  4. 変更はすぐに(マルチコンテナ展開の場合、15秒以内に)効果が出ます。
マルチコンテナ展開: データベース構成を使用する場合 (IS_CONFIG_VARIABLES_IN_DB_ENABLED=true)、サーバーとワーカーコンテナの両方が同じデータベースから読み込みます。 管理パネルの変更は両方に自動的に影響し、コンテナ間で環境変数を重複させる必要がなくなります(インフラストラクチャの変数を除く)。 管理パネルの変更は両方に自動的に影響し、コンテナ間で環境変数を重複させる必要がなくなります(インフラストラクチャの変数を除く)。
管理パネルを通じて構成できること:
  • 認証 - Google/Microsoft OAuth、パスワード設定
  • メール - SMTP設定、テンプレート、検証
  • ストレージ - S3構成、ローカルストレージパス
  • 統合 - Gmail、Googleカレンダー、Microsoftサービス
  • ワークフローとレート制限 - 実行制限、APIスロットリング
  • さらに多くのこと…
管理パネル構成変数
各変数は、設定 → 管理パネル → 構成変数 で説明付きでドキュメント化されています。 各変数は、設定 → 管理パネル → 構成変数 で説明付きでドキュメント化されています。 データベース接続 (PG_DATABASE_URL)、サーバーURL (SERVER_URL)、アプリの秘密キー (APP_SECRET) など、一部のインフラ設定は .env ファイルを介してのみ構成可能です。 完全な技術リファレンス →

2. 環境のみの構成

IS_CONFIG_VARIABLES_IN_DB_ENABLED=false
すべての構成が .env ファイルで管理されます:
  1. .env ファイル内で IS_CONFIG_VARIABLES_IN_DB_ENABLED=false を設定
  2. すべての構成変数を .env ファイルに追加
  3. 変更を有効にするためにコンテナを再起動してください
  4. 管理パネルは現在の値を表示しますが、修正はできません

マルチワークスペースモード

デフォルトでは、Twenty はシングルワークスペースモードで動作します—組織向けに 1 つの CRM インスタンスが必要な多くのセルフホスト型デプロイメントに最適です。

シングルワークスペースモード(デフォルト)

IS_MULTIWORKSPACE_ENABLED=false  # default
  • Twenty の各インスタンスにつき 1 つのワークスペース
  • 最初のユーザーは自動的にフル権限の管理者になります(canImpersonatecanAccessFullAdminPanel
  • 最初のワークスペース作成後は新規サインアップが無効になります
  • シンプルな URL 構造: https://your-domain.com

マルチワークスペースモードの有効化

IS_MULTIWORKSPACE_ENABLED=true
DEFAULT_SUBDOMAIN=app  # default value
同一の Twenty インスタンス上で複数の独立したチームがそれぞれのワークスペースを必要とする、SaaS のようなデプロイメント向けにマルチワークスペースモードを有効にします。 シングルワークスペースモードとの主な違い:
  • 同一インスタンス上に複数のワークスペースを作成できます
  • 各ワークスペースに専用のサブドメインが割り当てられます(例: sales.your-domain.commarketing.your-domain.com
  • ユーザーは {DEFAULT_SUBDOMAIN}.your-domain.com でサインアップおよびログインします(例: app.your-domain.com
  • 管理者権限は自動付与されません—各ワークスペースの最初のユーザーは一般ユーザーです
  • サブドメインやカスタムドメインなどのワークスペース固有の設定がワークスペース設定で利用可能になります
環境専用の設定: IS_MULTIWORKSPACE_ENABLED.env ファイルでのみ設定でき、再起動が必要です。 管理パネルからは変更できません。

マルチワークスペース向けの DNS 構成

マルチワークスペースモードを使用する場合、動的なサブドメイン作成を可能にするために、ワイルドカードレコードで DNS を構成してください:
*.your-domain.com -> your-server-ip
これにより、手動の DNS 構成なしで新規ワークスペースへのサブドメインルーティングが自動化されます。

ワークスペース作成の制限

マルチワークスペースモードでは、新しいワークスペースを作成できるユーザーを制限したい場合があります:
IS_WORKSPACE_CREATION_LIMITED_TO_SERVER_ADMINS=true
有効にすると、canAccessFullAdminPanel を持つユーザーのみが追加のワークスペースを作成できます。 初回サインアップ時には、ユーザーは引き続き最初のワークスペースを作成できます。

Gmail & Googleカレンダー統合

Google Cloudプロジェクトを作成

  1. Google Cloud Console にアクセス
  2. 新しいプロジェクトを作成するか既存のプロジェクトを選択
  3. 以下のAPIを有効にします:

OAuthの構成

  1. 資格情報にアクセス
  2. OAuth 2.0 クライアントIDを作成
  3. 次のリダイレクトURIを追加:
    • https://{your-domain}/auth/google/redirect (SSO用)
    • https://{your-domain}/auth/google-apis/get-access-token (統合用)

Twentyで構成

  1. 設定 → 管理パネル → 構成変数 に移動
  2. Google Auth セクションを見つけます
  3. 次の変数を設定:
    • MESSAGING_PROVIDER_GMAIL_ENABLED=true
    • CALENDAR_PROVIDER_GOOGLE_ENABLED=true
    • AUTH_GOOGLE_CLIENT_ID={client-id}
    • AUTH_GOOGLE_CLIENT_SECRET={client-secret}
    • AUTH_GOOGLE_CALLBACK_URL=https://{your-domain}/auth/google/redirect
    • AUTH_GOOGLE_APIS_CALLBACK_URL=https://{your-domain}/auth/google-apis/get-access-token
環境専用モード: IS_CONFIG_VARIABLES_IN_DB_ENABLED=false を設定した場合、これらの変数を .env ファイルに追加してください。
必要なスコープ (自動的に構成される): 関連ソースコードを見る
  • https://www.googleapis.com/auth/calendar.events
  • https://www.googleapis.com/auth/gmail.readonly
  • https://www.googleapis.com/auth/profile.emails.read

アプリがテストモードの場合

アプリがテストモードの場合、プロジェクトにテストユーザーを追加する必要があります。 OAuth 同意画面で、「テストユーザー」セクションにテストユーザーを追加してください。

Microsoft 365 統合

カレンダーおよびメッセージングAPIを使用するためには、Microsoft 365 ライセンスが必要です。 They will not be able to sync their account on Twenty without one. それがない場合、Twenty でアカウントを同期できません。

Microsoft Azureでプロジェクトを作成

Microsoft Azureでプロジェクトを作成し、資格情報を取得してください。

APIを有効にする

Microsoft Azureコンソールで”権限”の欄で以下のAPIを有効にします:
  • Microsoft Graph: Mail.ReadWrite
  • Microsoft Graph: Mail.Send
  • Microsoft Graph: Calendars.Read
  • Microsoft Graph: User.Read
  • Microsoft Graph: openid
  • Microsoft Graph: email
  • Microsoft Graph: profile
  • Microsoft Graph: offline_access
注: “Mail.ReadWrite” と “Mail.Send” は、ワークフローアクションを使用してメールを送信する場合に必須です。 メールを受信するだけの場合は、“Mail.Read”を使用できます。 メールを受信するだけの場合は、“Mail.Read”を使用できます。 メールを受信するだけの場合は、“Mail.Read”を使用できます。

認証されたリダイレクトURI

プロジェクトに次のリダイレクトURIを追加する必要があります:
  • https://{your-domain}/auth/microsoft/redirect マイクロソフトSSO を使用する場合
  • https://{your-domain}/auth/microsoft-apis/get-access-token

Twentyで構成

  1. 設定 → 管理パネル → 構成変数 に移動
  2. Microsoft Auth セクションを見つけます
  3. 次の変数を設定:
    • MESSAGING_PROVIDER_MICROSOFT_ENABLED=true
    • CALENDAR_PROVIDER_MICROSOFT_ENABLED=true
    • AUTH_MICROSOFT_ENABLED=true
    • AUTH_MICROSOFT_CLIENT_ID={client-id}
    • AUTH_MICROSOFT_CLIENT_SECRET={client-secret}
    • AUTH_MICROSOFT_CALLBACK_URL=https://{your-domain}/auth/microsoft/redirect
    • AUTH_MICROSOFT_APIS_CALLBACK_URL=https://{your-domain}/auth/microsoft-apis/get-access-token
環境専用モード: IS_CONFIG_VARIABLES_IN_DB_ENABLED=false を設定した場合、これらの変数を .env ファイルに追加してください。

スコープを構成

関連ソースコードを見る
  • ‘openid’
  • ‘メール’
  • ‘プロフィール’
  • ‘offline_access’
  • ‘Mail.ReadWrite’
  • ‘Mail.Send’
  • ‘Calendars.Read’

アプリがテストモードの場合

アプリがテストモードの場合、プロジェクトにテストユーザーを追加する必要があります。 「ユーザーとグループ」セクションにテストユーザーを追加してください。

カレンダーとメッセージングのバックグラウンドジョブ

Gmail、Googleカレンダー、またはMicrosoft 365統合を構成した後、データを同期するバックグラウンドジョブを開始する必要があります。 次の定期ジョブをワーカーコンテナに登録してください:
# from your worker container
yarn command:prod cron:messaging:messages-import
yarn command:prod cron:messaging:message-list-fetch
yarn command:prod cron:calendar:calendar-event-list-fetch
yarn command:prod cron:calendar:calendar-events-import
yarn command:prod cron:messaging:ongoing-stale
yarn command:prod cron:calendar:ongoing-stale
yarn command:prod cron:workflow:automated-cron-trigger

メール設定

  1. 設定 → 管理パネル → 構成変数 に移動
  2. メール セクションを見つけます
  3. SMTP設定を構成:
環境専用モード: IS_CONFIG_VARIABLES_IN_DB_ENABLED=false を設定した場合、これらの変数を .env ファイルに追加してください。

Logic Functions

Twenty supports logic functions for workflows and custom logic. 実行環境は、SERVERLESS_TYPE 環境変数で設定されます。
Security Notice: The local driver (SERVERLESS_TYPE=LOCAL) runs code directly on the host in a Node.js process with no sandboxing. 開発では、信頼できるコードにのみ使用してください。 信頼できないコードを扱う本番デプロイでは、SERVERLESS_TYPE=LAMBDA または SERVERLESS_TYPE=DISABLED の使用を強く推奨します。

利用可能なドライバー

ドライバー環境変数ユースケースセキュリティレベル
無効SERVERLESS_TYPE=DISABLEDDisable logic functions entirely該当なし
ローカルSERVERLESS_TYPE=LOCAL開発および信頼できる環境低(サンドボックスなし)
LambdaSERVERLESS_TYPE=LAMBDA信頼できないコードを扱う本番環境高(ハードウェアレベルの分離)

推奨構成

開発向け:
SERVERLESS_TYPE=LOCAL  # default
本番向け(AWS):
SERVERLESS_TYPE=LAMBDA
SERVERLESS_LAMBDA_REGION=us-east-1
SERVERLESS_LAMBDA_ROLE=arn:aws:iam::123456789:role/your-lambda-role
SERVERLESS_LAMBDA_ACCESS_KEY_ID=your-access-key
SERVERLESS_LAMBDA_SECRET_ACCESS_KEY=your-secret-key
To disable logic functions:
SERVERLESS_TYPE=DISABLED
When using SERVERLESS_TYPE=DISABLED, any attempt to execute a logic function will return an error. This is useful if you want to run Twenty without logic function capabilities.