> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coreweave.com/llms.txt
> Use this file to discover all available pages before exploring further.

> 環境変数を使用して、データベース、ストレージ、Redis、IAM などの設定を行い、セルフマネージドの W&B Server インストールを構成します。

# 環境変数を設定する

W\&B では、System Settings の管理 UI でインスタンスレベルの設定を行えるだけでなく、環境変数を使用してこれらの値をコードで設定することもできます。このページでは、セルフマネージドの W\&B Server デプロイメントで、データベース、ストレージ、Redis、アイデンティティプロバイダなど、インスタンスレベルの動作を制御するために設定できる環境変数を紹介します。これらの変数を使用すると、管理 UI を使わずに、設定をコードとして管理できます。IAM 固有の変数については、[IAM の高度な設定](/ja/products/wandb/platform/hosting/iam/advanced_env_vars)を参照してください。

<h2 id="environment-variable-reference">
  環境変数リファレンス
</h2>

次の表では、各環境変数について、制御する動作と値の制約を説明します。

| 環境変数 | 説明 |
| - | - |
| `LICENSE` | wandb/local のライセンス |
| `MYSQL` | MySQL の接続文字列 |
| `BUCKET` | データ保存先の S3 / GCS バケット |
| `BUCKET_QUEUE` | オブジェクト作成イベントを受信する SQS / Google PubSub キュー |
| `NOTIFICATIONS_QUEUE` | run イベントのパブリッシュ先となる SQS キュー |
| `AWS_REGION` | バケットが存在する AWS リージョン |
| `HOST` | インスタンスの FQD (例: `https://my.domain.net`) |
| `OIDC_ISSUER` | OpenID Connect アイデンティティプロバイダの URL (例: `https://cognito-idp.us-east-1.amazonaws.com/us-east-1_uiIFNdacd`) |
| `OIDC_CLIENT_ID` | アイデンティティプロバイダ内のアプリケーションのクライアント ID |
| `OIDC_AUTH_METHOD` | Implicit (デフォルト) または pkce。詳細は以下のセクションを参照してください。 |
| `SLACK_CLIENT_ID` | Alerts に使用する Slack アプリケーションのクライアント ID |
| `SLACK_SECRET` | Alerts に使用する Slack アプリケーションのシークレット |
| `LOCAL_RESTORE` | インスタンスにアクセスできない場合は、一時的にこれを true に設定できます。コンテナーのログで一時的な認証情報を確認してください。 |
| `REDIS` | W\&B で外部 Redis インスタンスを設定するために使用できます。 |
| `LOGGING_ENABLED` | true に設定すると、アクセスログが stdout にストリーミングされます。この変数を設定しなくても、サイドカーコンテナーをマウントして `/var/log/gorilla.log` を tail することで、ログを確認できます。 |
| `GORILLA_ALLOW_USER_TEAM_CREATION` | true に設定すると、管理者以外のユーザーが新しいチームを作成できます。デフォルトは false です。 |
| `GORILLA_CUSTOMER_SECRET_STORE_SOURCE` | W\&B Weave で使用するチームシークレットの保存先となるシークレットマネージャーを設定します。サポートされるシークレットマネージャーは次のとおりです: <ul><li><b>内部シークレットマネージャー</b> (デフォルト): <code>k8s-secretmanager://wandb-secret</code></li><li><b>AWS Secret Manager</b>: <code>aws-secretmanager</code></li><li><b>Google Cloud Secret Manager</b>: <code>gcp-secretmanager</code></li><li><b>Azure</b>: <code>az-secretmanger</code></li></ul> |
| `GORILLA_DATA_RETENTION_PERIOD` | run から削除されたデータを保持する期間 (時間単位)。削除された run データは復元できません。入力値の末尾に `h` を付けます。例: `"24h"` |
| `GORILLA_DISABLE_PERSONAL_ENTITY` | true に設定すると、[個人 entity](/ja/support/models/articles/what-is-the-difference-between-team-and-) が無効になります。ユーザーは個人 entity に新しい個人 project を作成できなくなり、既存の個人 project にも書き込めなくなります。 |
| `GORILLA_GRAPHQL_DISABLE_INTROSPECTION` | true に設定すると、GraphQL のイントロスペクションが無効になります。`__type` および `__schema` クエリはスキーマデータを返しませんが、リクエスト自体は成功します。**セルフマネージド** では、Gorilla の設定フィールド `graphql-disable-introspection` を設定しても同じ効果が得られます。この変数は、`WeightsAndBiases` カスタムリソースの `spec.values.global.extraEnv` で設定します (Operator ガイドの [`global.extraEnv` の例](/ja/products/wandb/platform/hosting/self-managed/operator#ldap) を参照してください) 。イントロスペクションがすでに無効になっているデプロイメントに接続する場合、**クライアントアプリケーションには [W\&B SDK v0.26.0](/ja/release-notes/sdk-releases#0-26-0) 以降が必要です**。 |
| `GRAPHQL_REJECT_UNAUTHED_REQUESTS` | **API** サービスで `true` に設定すると、認証済みユーザーが関連付けられていない GraphQL リクエストを拒否します。認証されていないリクエストには HTTP 401 が返されます。**セルフマネージド** および **専用クラウド** の v0.80.0 以降でのみ利用でき、Multi-tenant Cloud では利用できません。この機能はオプトイン方式です。環境変数が未設定の場合、または `true` 以外の値の場合、動作は変わりません。API コンポーネントにのみ設定してください (例: Helm values の `api.env`) 。有効化する前に、匿名の GraphQL アクセスに依存するワークフロー (サインインせずに共有 report を閲覧する場合や、公開 project など) が引き続き要件を満たしていることを確認してください。**セルフマネージド** では、Gorilla の設定フィールド `graphql-reject-unauthed-requests` を `true` に設定することでも同じ効果が得られます。 |
| `GORILLA_ARTIFACT_GC_ENABLED` | true に設定すると、削除されたアーティファクトのガベージコレクションが有効になります。セルフマネージドのデプロイでは必須です。詳細については、[アーティファクトを削除する](/ja/products/wandb/artifacts/delete-artifacts)を参照してください。 |
| `WANDB_ARTIFACT_DIR` | ダウンロードしたすべてのアーティファクトの保存先です。未設定の場合、デフォルトではトレーニングスクリプトを基準とした相対パスの `artifacts` ディレクトリが使用されます。このディレクトリが存在し、実行ユーザーに書き込み権限があることを確認してください。この変数は、生成されるメタデータファイルの保存先には影響しません。メタデータファイルの保存先は `WANDB_DIR` 環境変数で設定できます。 |
| `WANDB_DATA_DIR` | ステージング用アーティファクトのアップロード先です。`platformdirs` Python パッケージの `user_data_dir` の値を使用するため、デフォルトの場所はお使いのプラットフォームによって異なります。このディレクトリが存在し、実行ユーザーに書き込み権限があることを確認してください。 |
| `WANDB_DIR` | 生成されたすべてのファイルの保存先です。未設定の場合、デフォルトではトレーニングスクリプトを基準とした相対パスの `wandb` ディレクトリが使用されます。このディレクトリが存在し、実行ユーザーに書き込み権限があることを確認してください。この変数は、ダウンロードしたアーティファクトの保存先には影響しません。アーティファクトの保存先は `WANDB_ARTIFACT_DIR` 環境変数で設定できます。 |
| `WANDB_IDENTITY_TOKEN_FILE` | [アイデンティティ フェデレーション](/ja/products/wandb/platform/hosting/iam/identity_federation)で使用する Java Web Token (JWT) を保存するローカルディレクトリの絶対パス。 |

<Note>
  * `GORILLA_DATA_RETENTION_PERIOD` 環境変数は慎重に使用してください。この環境変数は**削除された run データ** (削除フロー後のメディアなど、run に関連付けられたファイルを含む) に適用されます。アーティファクトは**削除されません**。アーティファクトを削除するには、[アーティファクトを削除する](/ja/products/wandb/artifacts/delete-artifacts)の説明に従って、アーティファクトの削除機能と `GORILLA_ARTIFACT_GC_ENABLED` を使用してください。run やファイルの削除とストレージおよびこの設定との関係については、**run を削除する**の[削除された run データがストレージから削除されるタイミング](/ja/products/wandb/runs/delete-runs#when-deleted-run-data-is-removed-from-storage)を参照してください。この変数を設定すると、保持期間に従ってデータが削除されます。この値を有効化または変更する前に、データベースとストレージバケットの両方をバックアップしてください。

    バケットからのオブジェクトのバックグラウンド削除は**目安**であり、一定時間内に完了することは保証されません。想定される動作、トラブルシューティング、およびストレージコストとの関係については、[バケットのストレージとコストを管理する](/ja/products/wandb/platform/hosting/managing-bucket-storage)を参照してください。
  * [Kubernetes Operator](/ja/products/wandb/platform/hosting/self-managed/operator) で `GRAPHQL_REJECT_UNAUTHED_REQUESTS` を有効にするには、API コンポーネントにのみ設定します。

    ```yaml theme={"system"}
    api:
    env:
        GRAPHQL_REJECT_UNAUTHED_REQUESTS: "true"
    ```

    変更を適用し、API Pod のロールアウトが完了してから設定を確認してください。この動作を無効にするには、変数を削除するか、別の値に設定します。
</Note>

<h2 id="advanced-reliability-settings">
  高度な信頼性設定
</h2>

このセクションでは、W\&B Server デプロイメントの信頼性とパフォーマンスを向上させるために適用できる、任意の設定について説明します。

<h3 id="redis">
  Redis
</h3>

外部 Redis サーバーの使用は任意ですが、本番システムでは使用をお勧めします。Redis はサービスの信頼性を高めるとともに、キャッシュを有効にして読み込み時間を短縮します。この効果は大規模な project で特に顕著です。高可用性 (HA) を備えた ElastiCache などのマネージド Redis サービスを使用し、次の仕様を満たすようにしてください。

* メモリは最小 4 GB、推奨 8 GB
* Redis バージョン 6.x
* 転送中の暗号化
* 認証の有効化

W\&B で Redis インスタンスを設定するには、W\&B の設定ページ `http(s)://YOUR-W&B-SERVER-HOST/system-admin` に移動します。**Use an external Redis instance** オプションを有効にし、Redis 接続文字列を次の形式で入力します。

<Frame>
  <img src="https://mintcdn.com/coreweave-dbfa0e8d/3Dv_sw2eg8feUJlx/products/wandb/platform/_media/configure_redis.png?fit=max&auto=format&n=3Dv_sw2eg8feUJlx&q=85&s=527a352ee1e0dab4ed8991aecc1b5eb6" alt="W&B での REDIS の設定" width="659" height="799" data-path="products/wandb/platform/_media/configure_redis.png" />
</Frame>

コンテナーまたは Kubernetes デプロイメントで環境変数 `REDIS` を使用して Redis を設定することもできます。また、`REDIS` を Kubernetes シークレットとして設定することも可能です。

このページでは、Redis インスタンスがデフォルトのポート `6379` で実行されていることを前提としています。別のポートを使用し、認証を設定したうえで `redis` インスタンスの TLS を有効にする場合、接続文字列の形式は `redis://$USER:$PASSWORD@$HOST:$PORT?tls=true` となります。


## Related topics

- [Weave の環境変数を設定する](/ja/products/wandb/weave/guides/core-types/env-vars.md)
