windows部署superset
2023-06-13 09:17:33 时间
解决的问题
- 在WIN10环境下,安装并正常运行Superset
- 建议使用Python虚拟环境,减少库依赖冲突
- 不需要安装VC啦!
注意
- 本教程安装的版本是1.5
- Superset在2022年7月发布了2.0的大版本更新
- 如python的版本要求变为3.9+,同时增加了更多的库依赖等
- 以下教程未为对2.0版本进行完整更新,现阶段1.5版本的安装仍有一定的通用性,可跳跃性浏览
- 通常出现问题的地方在于包依赖,是安装Superset时对方的requirement没有指定依赖库版本号的坑,暂未有更好的应对策略
- 考虑重写requirements.txt文件,指定出现问题的依赖库版本一次性解决依赖问题
限制
- python 3.7+
- Superset 2.0则要求为3.9+
必要的知识
部署
1. 部署并进入Python虚拟环境(可选)(建议)
- Superset的依赖库较多,强烈建议进行该步骤
2. 更新pip,并安装pillow和wheel库
python -m pip install --upgrade pip
pip install pillow
pip install wheel
- 通过pip方式安装的Superset似乎不会安装pillow库,在运行期间会显示Warning
- 安装wheel库是便于安装其他库
- 在虚拟环境下更新pip不需要加--user参数
3. 安装python-geohash库(重要)
- 重点:提前安装该库能跳过安装VC的坑!
- 在网上下载该库的whl文件
- 下载页面
- 注意:需要根据python的版本和系统的位数选择文件
- 根据系统环境,本次下载选择cp38‑win_amd64.whl
- 安装whl文件
pip install [whl_path]
- [whl_path]:下载的python-geohash的whl文件地址
4. 安装apache-superset(2022/10/27更新)
pip install apache-superset==1.5.0 -i https://pypi.tuna.tsinghua.edu.cn/simple/
- 使用清华源能提高下载速度
- 也可以使用其他的源
- 如正在使用魔法上网,不要另外指定源
- 指定版本号可暂时避免因版本更新而导致的库冲突问题(2022/10/27)
5. 处理依赖冲突
5.1 降级markupsafe库
pip install markupsafe==2.0.1
- Superset会导入makrupsafe库的的soft_unicode类,但新版的makrupsafe已弃用该类,因而会导致无法正常启动Superset,需要降级至2.0.1
5.2 降级WTForms库(2022/10/27 更新)
pip install WTForms==2.3.3
- 有部分读者反映遇到No module named 'wtforms.ext'错误,初步原因考虑为superset安装时的requirements.txt没有指定wtforms的版本而安装了最新的版本,导致superset无法兼容
- 是Superset 2.0新增的依赖库
6. 设置FLASK_APP(重要)
set FLASK_APP=superset
- Superset的运行需要预配置FLASK_APP
7. 初始化数据库、创建管理员账户和初始化权限
superset db upgrade
superset fab create-admin
superset init
- username、firstname、lastname和email都有默认值,可直接回车跳过
- 需要输入两次密码
- 上述步骤如有中断,需重新进入虚拟环境(如有),重新设置FLASK_APP
8. 至此,部署完毕
运行
1.进入已部署Superset的虚拟环境(如有)
2.设置FLASK_APP
set FLASK_APP=superset
- 在虚拟环境下,每次运行superset前都需要设置FLASK_APP,否则会报错
- 启动Superset
::基础启动(本地测试)
superset run -p 8088
::进阶启动(开放端口,局域网内可访问)
superset run -h 0.0.0.0 -p 8088 --with-threads --reload --debugger
- 在本地使用的情况下,两种启动方式基本是等效的,不过建议使用进阶启动方式
4.运行后,命令行窗口不能关闭,否则会停止服务
- 可以后台服务方式启动Superset,具体方法详见本文下方“使用优化 - 3. 辅助启动bat”
使用优化(非必须)
1. 加载官方用例
superset load_examples
- 该代码需在启动superset前输入
- 由于墙的问题,需要魔法上网才能加载,记得在打开命令行前开启全局代理
2. 汉化
- 定位并进入Superset的库代码文件夹,找到config.py
- 通常是在安装superset的python环境文件夹的Lib\site-packages\superset
- 如果有装类似Everything的软件,直接搜site-packages\superset\config,一般第一个就是它
- 右键 - 通过记事本或IDE打开config.py
- 定位到BABEL_DEFAULT_LOCALE项,将en修改为zh即可
- 不建议汉化,主要是因为汉化后反而更难理解各项参数
相关文章
- 利用Topshelf把.NET Core Generic Host管理的应用程序部署为Windows服务「建议收藏」
- Windows系统日志分析_windows系统事件日志
- Rust腐蚀Windows SteamCMD开服教程
- Windows反调试技术简单讲解(用户模式篇)
- 关闭谷歌浏览器提示“若要接收后续 Google Chrome 更新,您需使用 Windows 10 或更高版本”的方法
- windows上传ipa到开发者中心(app store)的方法
- Windows安装使用Docker,方便你的开发和部署(DockerDesktop篇)
- 【新windows电脑部署测试环境系列-02】安装pycharm,数据库管理DataGirp等必备软件
- 【新windows电脑部署测试环境系列-01】部署python3 和 pip3
- 【实测】windows安装部署go实录(超详细)
- Google Chorme浏览器关闭Windows 7系统中“升级Windows 10”的通知栏。
- 手动搭建 WordPress 个人站点(Windows)
- windows apache部署SSL证书让网站支持https的配置方法
- Oracle客户端版本及位数(Windows系统)查看方法
- 安装初体验:Windows下MySQL环境搭建(windows安装mysql数据库)
- windows把Exsi、Linux和Windows兼容:实现三端互联的技术之旅(exsilinux)
- 服务在Windows系统上启动Redis服务(windows启动redis)
- 切换双系统:Linux与Windows的交互(linux和windows双系统)
- 令人惊讶:用Windows编译Linux程序(windows编译linux程序)
- 对比分析:Linux系统与Windows系统的异同(linux系统与windows系统的区别)
- 通过Linux在台式机上安装Windows的指南(linux安装windows)
- Windows下如何使用CMD登录MySQL数据库(cmd登mysql)
- windows下部署免费ssl证书(letsencrypt)的方法