Databricks アプリの app.yaml
ファイルは、アプリの実行方法を定義します。 アプリで別のエントリ ポイントまたは環境固有の構成が必要な場合は、この省略可能なファイルをプロジェクトに含め、既定の動作をオーバーライドできます。
.yaml
または.yml
ファイル拡張子を使用できます。 このファイルは、プロジェクト ディレクトリのルートにある必要があります。
サポートされている設定
app.yaml
ファイルは、次の設定をサポートしています。
設定 | タイプ | 説明 |
---|---|---|
command |
sequence |
アプリを実行するためにカスタム コマンドが必要な場合は、この設定を使用します。 既定では、Azure Databricks はコマンド python <my-app.py> を使用して Python アプリを実行します。ここで、 <my-app.py> はアプリのファイル構造の最初の .py ファイルです。 アプリに Node.jsが含まれている場合、既定のコマンドは npm run start 。
デプロイ ロジックを参照してください。Azure Databricks はシェルでコマンドを実行しないため、アプリ構成の外部で定義された環境変数をアプリに渡しません。 アプリで実行するために追加のパラメーターが必要な場合は、 env 構造体を使用します。この設定は省略可能です。 |
env |
list |
Azure Databricks では、アプリ ランタイム環境に既定の 環境変数 がいくつか自動的に設定されます。 この最上位のキーは、アプリに渡す追加の環境変数の省略可能な一覧を定義します。 各変数は、ハードコーディングされた値を使用することも、シークレットやデータベース エントリなどの外部ソースを参照することもできます。 一覧の有効な項目は次のとおりです。
この設定は省略可能です。 |
Streamlit アプリの app.yaml
例
次の app.yaml
ファイルは、Streamlit アプリを構成する方法を示しています。 カスタム コマンドを使用して streamlit run
でアプリを起動し、SQL ウェアハウス ID と使用状況追跡フラグの環境変数を設定します。
command: ['streamlit', 'run', 'app.py']
env:
- name: 'DATABRICKS_WAREHOUSE_ID'
value: 'quoz2bvjy8bl7skl'
- name: 'STREAMLIT_GATHER_USAGE_STATS'
value: 'false'
アプリが SQL ウェアハウスなどの特定のコンピューティング リソースに依存している場合、または実行時の動作を制御するために特定の環境変数が必要な場合は、次のような設定を使用します。
Flask アプリの app.yaml
の例
この例では、Gunicorn サーバーを使用して Flask アプリを構成する方法を示します。
command
設定では Gunicorn のスタートアップ パラメーターを指定し、env
セクションでは Unity カタログ ボリュームへのパスを環境変数として設定します。
command:
- gunicorn
- app:app
- -w
- 4
env:
- name: 'VOLUME_URI'
value: '/Volumes/catalog-name/schema-name/dir-name'
この方法は、アプリで Gunicorn などの運用対応 WSGI サーバーが必要な場合、および Unity カタログ ボリュームまたは別の環境固有のパスに格納されているデータに依存する場合に使用します。