下面介绍了 Databricks 应用在其中运行的系统环境:
操作系统: Ubuntu 22.04 LTS
Python 环境: Python 3.11,在专用虚拟环境中运行。 所有依赖项都在此环境中隔离,包括在其中
requirements.txt定义的库和预安装的库。Node.js 环境: Node.js 版本 22.16。 使用
npm和package.json. 管理依赖项。系统资源: 默认情况下,每个应用最多可以使用 2 个虚拟 CPU(vCPU)和 6 GB 内存。 配置计算大小,以根据工作负荷要求调整 CPU 和内存分配。 请参阅 配置 Databricks 应用的计算大小。
重要
应用计算容量设定处于 Beta 阶段。
查看环境详细信息
若要查看特定应用的环境(包括环境变量和已安装的包),请转到应用详细信息页上的环境选项卡。 请参阅查看 Databricks 应用的详细信息。
默认环境变量
每个应用中都有以下环境变量:
| 变量 | DESCRIPTION |
|---|---|
DATABRICKS_APP_NAME |
正在运行的应用的名称。 |
DATABRICKS_WORKSPACE_ID |
应用所属的 Databricks 工作区的唯一 ID。 |
DATABRICKS_HOST |
应用所属的 Databricks 工作区的 URL。 |
DATABRICKS_APP_PORT |
应用应侦听的网络端口。 |
DATABRICKS_CLIENT_ID |
Databricks 服务主体分配给应用的客户端 ID。 |
DATABRICKS_CLIENT_SECRET |
分配给应用的 Databricks 服务主体的 OAuth 密钥。 |
Streamlit 的默认环境变量
如果使用 Streamlit 框架,Databricks 应用环境会预配置多个特定于 Streamlit 的环境变量:
| 变量 | DESCRIPTION |
|---|---|
STREAMLIT_SERVER_ADDRESS |
Streamlit 使用的服务器地址。 此值设置为 0.0.0.0 且不能重写。 |
STREAMLIT_SERVER_PORT |
Streamlit 使用的端口。 此值设置为 DATABRICKS_APP_PORT 且不能重写。 |
STREAMLIT_SERVER_ENABLE_XSRF_PROTECTION |
由于 Databricks 应用反向代理可防范跨网站请求伪造 (CSRF),因此将其设置为 false。 |
STREAMLIT_SERVER_ENABLE_CORS |
由于 Databricks 应用反向代理可防范跨源资源共享 (CORS),因此将其设置为 false。 |
STREAMLIT_SERVER_HEADLESS |
此值设置为 true,因此 Streamlit 在启动时不打开浏览器窗口即可运行。 |
STREAMLIT_BROWSER_GATHER_USAGE_STATS |
此值设置为 false 以阻止将用户统计信息发送到 Streamlit。 |
预安装的 Python 库
Databricks Apps 环境中预安装了以下 Python 库。 除非需要其他版本,否则无需将它们包含在应用中。
| 图书馆 | 版本 |
|---|---|
| databricks-sql-connector | 3.4.0 |
| Databricks软件开发工具包 (databricks-sdk) | 0.33.0 |
| mlflow-skinny | 2.16.2 |
| gradio | 4.44.0 |
| streamlit | 1.38.0 |
| shiny | 1.1.0 |
| 破折号 | 2.18.1 |
| flask | 3.0.3 |
| fastapi | 0.115.0 |
| uvicorn[standard] | 0.30.6 |
| gunicorn | 23.0.0 |
| huggingface-hub | 0.35.3 |
| dash-ag-grid | 31.2.0 |
| dash-mantine-components | 0.14.4 |
| dash-bootstrap-components | 1.6.0 |
| plotly | 5.24.1 |
| plotly-resampler | 0.10.0 |
Databricks Apps 环境中未预安装 Node.js 库。 对于 Node.js 应用,必须显式列出文件中的所有依赖项 package.json ,以确保它们在运行时安装。