superset 1.3版本WIN10安装实录

首先说下,为什么要这么做,因为二开需要,二开要有源码,然后对源码修改,编译,所以不能通过类似https://zhuanlan.zhihu.com/p/271695878这种方式,直接安装;

1、去GitHub下载superset 1.3版本:https://github.com/apache/superset/tree/1.3

解压到某个目录,我是解压到D盘下的superset_1.3文件夹内,并重名为superset,即D:\superset_1.3\superset 就是解压后的文件夹

2、打开命令管理器,cmd,cd D:\superset_1.3\superset,就是进入解压后的文件夹内

3、依次执行下面命令:

#创建虚拟环境

pip install virtualenv

virtualenv superset_dev

然后

cd superset_dev/Scripts

activate(执行完命令后退出用deactivate)

4、下面安装依赖库,cd .. 到解压后的文件夹,比如我这里是 cd D:\superset_1.3\superset

将下面的这5个文件复制到这个文件夹下:

文件下载放到百度网盘,自己下载 

链接:https://pan.baidu.com/s/12z1-qkBL3vjbelmZv2mFpA
提取码:b0h0
放好后,依次执行下面命令

pip install Twisted-20.3.0-cp37-cp37m-win_amd64.whl
pip install Scrapy-1.8.0-py2.py3-none-any.whl
pip install python_geohash-0.8.5-cp37-cp37m-win_amd64.whl
pip install sasl-0.2.1-cp37-cp37m-win_amd64.whl

安装base:
pip install -r requirements/base.txt

安装dev:
pip install -r requirements/development.txt

如果出现import _brotli找不到,需要pip install brotlipy

 

运行后端
将项目安装到本地python库:在pycharm终端中进入项目根目录,执行下面的命令:

python setup.py install

(上面这个如果没有pycharm,直接cd 到解压后的文件夹应当也行,没试过,我是按照这个来的)

 

安装 superset 开发者模式

pip install -e .

如要修改superset用户数据库配置为mysql,执行完上面代码后,进入superset目录 找config.py变成自己要用得数据库:
SQLALCHEMY_DATABASE_URI = 'mysql://用户名:用户密码@ip地址/superset?charset=UTF8'

同时,要到你的mysql数据库里面,新建superset 名字的数据库,跟上面信息一致

 

# Create an admin user in your metadata database (use `admin` as username to be able to load the examples)
superset fab create-admin

提醒下,必须要建立个admin名称用户,因为这后面的加载示例数据,必须需要admin用户名,当然你也可以再新建其他的admin 角色的用户

回有提示输入用户名,firstname lastname 邮箱 密码,除了用户名和密码必须填写,且必须记住以外,其他可以直接回车跳过

 

# Initialize the database
superset db upgrade

 

# Load some data to play with.
# Note: you MUST have previously created an admin user with the username `admin` for this command to work.
首先要修改superset\examples\helpers.py 里面找到base_url,改为 BASE_URL = "https://github.com/apache-superset/examples-data",在执行下面

superset load-examples

(反正我是成功一半,没有完全成功)

启动
superset run -h 0.0.0.0 -p 8001 --with-threads --reload --debugger
或者
superset run -h 0.0.0.0 -p 8080

至此,后端文件搞定,下面开始编译前端文件

进入解压后源文件的superset-frontend目录下,cd superset-frontend

 

安装相关依赖:
npm install

 

安装完后,

修改superset\superset-frontend\webpack.config.js,将原来的jsx 的这块类似语句改为下面的

{
test: /\.jsx?$/,
// include source code for plugins, but exclude node_modules and test files within them
exclude: [/superset-ui.*\/node_modules\//, /\.test.jsx?$/],
include: [
new RegExp(`${APP_DIR}/src`),
/superset-ui.*\/src/,
new RegExp(`${APP_DIR}/.storybook`),
path.resolve(__dirname, './src')
],
use: [babelLoader],
},

注意啊,一定要改,否则编译不通过,尤其注意path.resolve(__dirname, './src')这句

执行编译
npm run dev

可以了,等待完成,最后说下,完成后,并不像其他语句一样,执行完,就会出现指针显示,我忘记截图了,后面补上完成样子;

 上面弄完后,可以使用pycharm 打开解压后的文件根目录,这样就能通过pycharm 修改调试代码了,这里说下,为了方便从pycharm上启动这个程序,在解压的源文件根目录下,新建一个start.py文件,文件内容代码为:

import os
from superset import create_app

os.environ["superset_dev"] = os.path.join(os.getcwd(), 'superset_dev/Scripts')

if __name__ == '__main__':
    superset_app = create_app()
    superset_app.run(host="0.0.0.0", port="5050", debug=True)

这里的port你可以自己随意修改

然后每次想启动,运行下这个文件就可以了,如果你不想用pycharm执行启动,那么就打开 cmd,然后执行:

还可以把这个做成bat文件,以后点击下就可以了,这个晚点发上来;

至此,结束,之所以这么复杂,不直接用annaconda这种安装,就是为了做代码调试,可以用pycharm来调试代码,另外修改前端代码都需要修改源码,然后编译下,通过annaconda的方式没有源码,所以无法二次编译,对于二开来说,没法继续玩,这是我暂时的理解,也是小菜一个,有什么其他的想法和思路环境评论区留言;

posted @ 2021-08-26 18:35  数据行者  阅读(1633)  评论(2编辑  收藏  举报