Databricks アプリの実行を構成する app.yaml
Databricks アプリの app.yaml
ファイルは、アプリの実行方法を定義します。デフォルトでは、Databricks はコマンド python app.py
を使用してアプリを実行します。アプリで別のエントリ ポイントまたは環境固有の構成が必要な場合は、実行動作をカスタマイズするために、オプションの app.yaml
ファイルをプロジェクトに含めることができます。
.yaml
または.yml
ファイル拡張子を使用できます。このファイルは、プロジェクトディレクトリのルートに配置する必要があります。
サポートされている設定
app.yaml
ファイルでは、次の設定がサポートされています。
設定 | Type | 説明 |
---|---|---|
|
| アプリを実行するためのオプションの引数セット。この設定は、アプリの実行にカスタム コマンドが必要な場合に使用します。デフォルト値は コマンドはシェルで実行されないため、アプリ構成の外部で定義された環境変数はアプリに渡されません。アプリの実行に追加のパラメーターが必要な場合は、 この設定はオプションです。 |
|
| 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 Catalog ボリュームへのパスを設定します。
command:
- gunicorn
- app:app
- -w
- 4
env:
- name: 'VOLUME_URI'
value: '/Volumes/catalog-name/schema-name/dir-name'
このアプローチは、アプリが Gunicorn のような本番運用可能な WSGI サーバーを必要としている場合や、 Unity Catalog ボリュームまたは別の環境固有のパスに保存されたデータに依存している場合に使用します。