Databricks アプリの依存関係を管理する
各 Databricks アプリには、Python、Node.js、またはその両方の依存関係を含めることができます。これらの依存関係は、言語固有のファイルで定義します。
requirements.txt
ファイルを使用して、追加の Python パッケージを指定します。package.json
ファイルを使用して、 Node.js パッケージを指定します。
各アプリには、 Python ライブラリのセットもプリインストールされています。 「プリインストールされたPython ライブラリ」を参照してください。
Python の依存関係を定義する
追加の Python ライブラリを定義するには、 requirements.txt
ファイルを使用します。リストされているパッケージがプレインストールされているパッケージと一致する場合、ファイル内のバージョンがデフォルトを上書きします。
例えば:
# Override default version of dash
dash==2.10.0
# Add additional libraries not pre-installed
requests==2.31.0
numpy==1.24.3
# Specify a compatible version range
scikit-learn>=1.2.0,<1.3.0
バージョンの競合を回避
依存関係を定義する際には、以下の点に注意してください。
- プリインストールされたパッケージを上書きすると、指定したバージョンがプリインストールされたバージョンと大幅に異なる場合、互換性の問題が発生する可能性があります。
- 常にアプリをテストして、パッケージ バージョンの変更によってエラーが発生しないことを確認します。
requirements.txt
で明示的なバージョンをピン留めすると、デプロイ間で一貫したアプリの動作を維持できます。
Node.js依存関係を定義する
ライブラリを定義するには Node.js アプリのルートに package.json
ファイルを含めます。 デプロイ中に、Databricks はこのファイルを検出し、 npm install
を実行して、そのファイルにリストされているすべての依存関係をインストールします。
たとえば、Vite を使用する React アプリの package.json
ファイルは次のようになります。
JSON
{
"name": "react-fastapi-app",
"version": "1.0.0",
"private": true,
"type": "module",
"scripts": {
"build": "npm run build:frontend",
"build:frontend": "vite build frontend"
},
"dependencies": {
"react": "^18.2.0",
"react-dom": "^18.2.0",
"typescript": "^5.0.0",
"vite": "^5.0.0",
"@vitejs/plugin-react": "^4.2.0",
"@types/react": "^18.2.0",
"@types/react-dom": "^18.2.0"
}
}
注記
devDependencies
ではなく、dependencies
未満のnpm run build
に必要なすべてのパッケージをリストします。環境変数で NODE_ENV=production
を設定すると、デプロイメント・プロセスは devDependencies
のインストールをスキップします。