Superset在Windows上源码二次开发的环境搭建

3,748 阅读1分钟

环境搭建:

环境:windows10 + python3.6.3

Superset版本:0.999.0dev

Superset源码地址:github.com/apache/incu…

参考:juejin.cn/post/684490…

每个版本的部署方式可能多少有点差异,之前看别的贴都多多少少有点不适用的地方,不过原理都一样的,大家见机行事哈

  1. 从git上下载源码,之前通过pip直接install的apache-superset,最好从site-packages中删除,以免后续造成干扰

  2. 建议使用python虚拟环境进行部署,执行以下命令

    pip install virtualenv
    virtualenv env
    env\Scripts\activate

  3. cd incubator-superset执行 pip install -r requirements.txt 安装superset依赖

  4. 执行 pip install -e .从本地安装superset库,这样就可以本地调试开发了

  5. 可以在superset/config.py中,修改数据库配置,例如:

# The SQLAlchemy connection string.
# SQLALCHEMY_DATABASE_URI = "sqlite:///" +  os.path.join(DATA_DIR, "superset.db")
SQLALCHEMY_DATABASE_URI='mysql://root:123456@localhost:3306/superset_db?charset=UTF8'
  1. 执行cd superset\bin 初始化数据库用户名和密码,并导入superset自带的demo:
# Initialize the database
python superset db upgrade

# Create an admin user (you will be prompted to set a username, first and last name before setting a password)
set FLASK_APP=superset
flask fab create-admin

# Load some data to play with
python superset load_examples

# Create default roles and permissions
python superset init
  1. 前端的安装,cd incubator-superset\superset-frontend(superset前端模块):
    • 安装npm
    • 执行 npm install,网络不好的可以使用镜像 registry=https://registry.npm.taobao.org
    • 执行npm run dev启动前端
  2. 从本地启动superset后端, 官网使用的是python superset run -p 8088 --with-threads --reload --debugger,但我试了一下,这样会报can't find '__main__' module,看了下代码,这里不能从main启动,应该从flask-app来启动,因此直接执行flask run来本地启动superset后端

至此,window系统从源码本地部署superset完成,可以本地调试前后端开始HAPPY啦~~~