# General Translation Integrations: Databricks へのデプロイ
URL: https://generaltranslation.com/ja/docs/integrations/databricks/guides/deploying.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: 翻訳済みの Databricks App を、その翻訳データおよび Databricks シークレットとして保存した General Translation の APIキーとあわせてデプロイする方法。

デプロイしたアプリでは、General Translation から次の 2 つが必要になります。1 つはソースコードと一緒に配布されるインターフェースの翻訳、もう 1 つはランタイムでデータを翻訳するための APIキーです。APIキーは Databricks がシークレットから提供します。

## 始める前に [#before-start]

[クイックスタート](/docs/integrations/databricks/quickstart)を完了したうえで、[Databricks CLI](https://docs.databricks.com/aws/en/dev-tools/cli/) をインストールし、ワークスペースにサインインしておいてください。

## インターフェース の翻訳をリリースする [#translations]

デプロイの前には毎回 [`npx gt translate`](/docs/cli/reference/commands/translate) を実行し、`client/src/_gt/` に書き出されたファイルをコミットしてください。Databricks はアプリをソースからビルドするため、ソースツリーに含まれていない翻訳はアプリにも含まれません。

CI で翻訳する場合は、デプロイ前に CI のシークレットストアから取得した `GT_API_KEY` を使って、CI 上で [`npx gt translate`](/docs/cli/reference/commands/translate) を実行してください ([CLI の認証情報](/docs/cli/guides/configuring#credentials)を参照) 。

## APIキーをシークレットとして保存する [#api-key]

サーバーは `GT_PROJECT_ID` と `GT_API_KEY` を読み取ります。プロジェクトIDは秘匿する必要はありませんが、キーは秘匿すべき情報のため、Databricks のシークレットに保存してください。

1. キーを作成し、パイプでそのままシークレットに渡します。値がターミナルに表示されることはありません。

   ```bash
   npx gt api-key create --project-id <project-id> --name 'Databricks app' --permission project:translations:generate \
     | databricks secrets put-secret gt api-key
   ```

   `gt` スコープが存在しない場合は、先に `databricks secrets create-scope gt` で作成してください。

2. `databricks.yml` でシークレットをアプリに関連付けます。

   ```yaml title="databricks.yml"
   resources:
     apps:
       app:
         resources:
           - name: gt-api-key
             secret:
               scope: gt
               key: api-key
               permission: READ
   ```

3. `app.yaml` で両方の変数を設定します。`valueFrom` には前の手順で定義したリソース名を指定します。

   ```yaml title="app.yaml"
   env:
     - name: GT_PROJECT_ID
       value: <project-id>
     - name: GT_API_KEY
       valueFrom: gt-api-key
   ```

4. アプリをデプロイします。アプリの起動時に、Databricks がシークレットを解決して `GT_API_KEY` に設定します。

<Callout type="warn">
  **警告:** キーそのものを `app.yaml`、`databricks.yml`、またはクライアントコードに記述しないでください。`client/` 配下のファイルはすべてブラウザに配信されます。
</Callout>

## デプロイしたアプリを確認する [#check]

アプリを開いて言語を選択し、インターフェースとデータの両方が切り替わることを確認します。インターフェースは切り替わるのにデータがソース言語のままの場合は、サーバーに `GT_PROJECT_ID` または `GT_API_KEY` が設定されていません。本番環境では、[`tx`](/docs/node/reference/functions/tx) はエラーをログに出力して原文を返すため、アプリ自体は動作し続けます。

## Next steps

- /docs/integrations/databricks/guides/translating-data

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
