You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在服务器上部署Jupyter Lab编写的.ipynb格式Flask Web应用

部署Jupyter Lab编写的Flask .ipynb文件的解决方案

以下是三种不同场景下的可行方案,可根据你的实际需求选择:

方案1:转换为标准.py文件部署(生产环境首选)

该方案兼容性最好、性能最优,是最通用的部署方式:

  • 导出.ipynb为Python脚本:可以在Jupyter Lab界面打开目标文件后,依次点击「File」→「Save and Export Notebook As」→「Executable Script」生成同名.py文件;也可以通过命令行执行jupyter nbconvert --to script your_flask_app.ipynb完成转换。
  • 清理脚本内容:删除生成的.py文件中多余的Jupyter格式注释、魔法命令,确保Flask的app实例正常暴露,调整启动配置(比如关闭debug模式、调整监听端口)。
  • 按常规Flask应用部署:直接用Gunicorn、uWSGI等WSGI服务器托管该.py文件,搭配Nginx做反向代理即可完成上线。

方案2:直接运行.ipynb文件启动服务(适合临时测试)

如果不想修改原notebook文件,可以直接通过nbconvert的执行能力启动服务:

  • 先安装依赖:pip install nbconvert
  • 执行启动命令:jupyter nbconvert --execute your_flask_app.ipynb --to notebook --stdout > /dev/null,命令会逐行执行notebook内的所有代码单元,启动对应的Flask服务。
    注意:该方式稳定性较差,执行过程中任一代码单元报错都会导致服务中断,不建议生产环境使用。

方案3:参数化运行notebook部署(适合需要动态配置的场景)

如果你的Flask应用需要根据部署环境调整启动参数,可以用papermill工具实现参数化运行:

  • 安装依赖:pip install papermill
  • 执行启动命令:papermill your_flask_app.ipynb output.ipynb -p port 5000 -p debug False,可以通过-p参数传递自定义配置变量到notebook中,适配不同环境的需求。

通用注意事项:无论选择哪种方案,都要确保Flask实例的监听地址配置为0.0.0.0而非默认的127.0.0.1,否则外部网络无法正常访问部署的服务。

内容的提问来源于stack exchange,提问作者Shahin Ramezanzade

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.19 13:45:03