Hub documentation
Spaces 上的 Dash
Spaces 上的 Dash
借助 Dash Open Source,您可以使用纯 Python 在笔记本电脑上创建数据应用,无需使用 JavaScript。
通过构建一个示例应用来熟悉 Dash,该应用基于开源构建。当您的 Dash 应用准备供部门或全公司使用时,可通过Dash Enterprise进行扩展。或者,从一开始就使用 Dash Enterprise 启动您的项目,以释放开发生产力的提升,并获得 Plotly 团队的实操加速支持。
在 Spaces 上部署 Dash
要在 Spaces 上开始使用 Dash,请点击下方按钮:
这将开始使用 Plotly 的 Dash Docker 模板构建您的 Space。如果成功,您应该会看到一个与 Dash 模板应用 类似的应用程序。
自定义您的 Dash 应用
如果您之前从未使用过 Dash 进行开发,我们建议您从我们的 Dash 20 分钟入门教程 开始。
创建 Dash Space 时,您将获得几个关键文件以帮助您快速上手:
1. app.py
这是定义项目核心逻辑的主应用文件。Dash 应用通常以模块的形式组织,您可以选择将布局、回调和数据分离到其他文件中,例如 layout.py 等。
在 app.py 中,您会看到:
from dash import Dash, html我们导入Dash对象来定义应用程序,并导入html库,该库提供了用于组装项目的构建模块。app = Dash()在这里,我们定义了应用。布局、服务器和回调函数都绑定到app对象上。server = app.server在这里,我们定义了服务器变量,用于在生产环境中运行应用。app.layout =初始应用布局可以定义为 Dash 组件列表、单个 Dash 组件,或返回其中任意一种的函数。app.layout是您的初始布局,它将作为单页应用程序,通过项目中的回调和其他逻辑进行更新。if __name__ == '__main__': app.run(debug=True)如果您在本地使用python app.py运行项目,app.run(...)将会执行并启动一个开发服务器来运行您的项目,该服务器具备热重载、回调图等功能。在生产环境中,我们推荐使用
gunicorn,这是一款生产级服务器。使用gunicorn运行项目时,调试功能不会启用,因此这行代码永远不会被执行。
2. Dockerfile
Dash 应用的 Dockerfile 非常简洁,因为 Dash 的系统依赖很少。关键要求如下:
- 它会安装
requirements.txt中列出的依赖项(使用uv) - 它会创建一个非 root 用户以增强安全性
- 它使用
gunicorn app:server --workers 4通过gunicorn运行该应用
如果应用程序需要额外的系统依赖项、权限或其他 CLI 标志,您可能需要修改此文件。
3. requirements.txt
Space 会自动安装 requirements.txt 文件中列出的依赖项。至少,您必须在此文件中包含 dash 和 gunicorn。您还需要添加应用程序所需的其他任何软件包。
Dash Space 模板提供了一个基础配置,您可以根据需求对其进行扩展。
其他资源和支持
故障排除
如果您遇到问题:
- 确保您的笔记本在本地以应用模式运行,使用
python app.py - 检查所有必需的包是否都列在
requirements.txt中 - 验证端口配置是否匹配(7860 是 Spaces 的默认值)
- 检查 Space 日志中是否存在任何 Python 错误
如需更多帮助,请访问 Plotly 社区论坛 或 提交 issue。
Update on GitHub