设置 Superset 0.28.1(当前 pip 映像),适用于 Windows 的说明
- 按照文档中的说明操作,直到“pip install superset”之前
- 这包括全局的“pip install cryptography”。
在项目文件夹中打开命令提示符:
:: Drop some lib versions (this is required specifically for 0.28.1 on Windows,
:: doesn't apply on current master):
pip install Pandas==0.23.4
pip install SQLAlchemy==1.2.18
:: jwt started getting specific about the flask version from 3.21.0..
pip install flask-jwt-extended==3.20.0
:: Add current folder to those searched by python for modules:
set PYTHONPATH=%cd%
python wenv\Scripts\superset db upgrade
set FLASK_APP=superset
flask fab create-admin
python wenv\Scripts\superset load_examples
python wenv\Scripts\superset init
:: Start flask devserver:
python wenv\Scripts\superset run -p 8005 --with-threads --reload --debugger
在 Windows 上通过 git 克隆设置 Superset (2019-08-11)
如果从源设置 Superset 0.34rc1(使用命令提示符)(主要取自 RELEASING/Dockerfile.from_tarball,为 windows 修改了一些东西)
git clone <superset repo>
在 repo 文件夹中打开 shell,然后安装并激活虚拟环境:
python -m venv wenv
:: To activate in powershell: . .\wenv\Scripts\activate
wenv\Scripts\activate
需要安装node来构建静态,只需安装python包'nodeenv':
pip install nodeenv
Nodeenv 类似于 virtualenv,但用于管理节点。
接下来使用 nodeenv 制作节点虚拟环境,将其放置在 nodeenv 目录中:
nodeenv nodeenv
激活节点虚拟环境:
:: unlike virtualenv, nodeenv does not provide a script for activating
:: within git bash shell on windows, so we have to use command prompt
:: and convert a few commands to windows equivalents.
:: https://github.com/ekalinin/nodeenv/issues/226
:: To activate in powershell: . .\nodeenv\Scripts\Activate.ps1
nodeenv\Scripts\activate
cd superset\assets
npm ci
全局安装 webpack:
npm install -g webpack webpack-cli
设置 NODE_ENV 并运行 webpack:
set NODE_ENV=production
:: Note that webpack build requires min 2048 GB of RAM,
:: and spawns many child node.js instances, each of which
:: also require copious resources. If it doesn't have enough
:: resources, the build will of course fail.
webpack --mode=production --colors --progress
一段时间后,构建应该完成并且文件应该放在 superset/assets/dist 中。
:: Remove node_modules dir as it's no longer needed:
rmdir /q /a node_modules
:: cd back to project root
cd ..\..
:: On Windows, it appears nodeenv replaces virtualenv settings,
:: it doesn't work concurrently, so open a new shell and re-activate
:: python env.
wenv\Scripts\activate
:: Just in case install latest pip etc.
python -m pip install --upgrade pip setuptools wheel
:: Install project python packages
:: v - leave out the r, you must not.
python -m pip install -r requirements.txt -r requirements-dev.txt
:: install pyodbc, if planning to connect to ms sql
pip install pyodbc
:: superset/static/assets is supposed to symlink to ../assets.
:: So we need to make a *windows symlink* or adjust setup.py..
:: Windows symlink method:
:: Open cmd.exe in admin mode or enable windows Settings /
:: Update and Security / For developers.
:: in superset/static, rename 'assets' file.
rename assets assets_linux
:: make windows symlink
mklink assets ..\assets
:: Or modify setup.py and remove "static" from PACKAGE_DIR:
:: PACKAGE_DIR = os.path.join(BASE_DIR, "superset", "assets")
:: Finally, install superset in editable mode
pip install -e .
:: compile language files (gettext .po files)
fabmanager babel-compile --target superset/translations
set PATH=%cd%\superset\bin;%PATH%
IF DEFINED PYTHONPATH (set PYTHONPATH=%cd%\superset;%PYTHONPATH%) ELSE (set PYTHONPATH=%cd%\superset)
从这里我们大致遵循 RELEASING\from_tarball_entrypoint.sh:
:: If symlink was not created for /static/assets earlier:
:: Adjust superset/config.py, line 52 so it doesn't look in the 'static' folder anymore
:: This can also be adjusted by creating a superset_config.py file that overrides config.py..
:: PACKAGE_DIR = os.path.join(BASE_DIR, "assets")
python wenv\Scripts\superset db upgrade
set FLASK_APP=superset
flask fab create-admin
python wenv\Scripts\superset load_examples
python wenv\Scripts\superset init
启动烧瓶开发服务器:
:: if superset/static/assets symlink was create, static files will be correctly served..
python wenv\Scripts\superset run -p 8005 --with-threads --reload --debugger
从 git clone 为 Ubuntu Linux 18.04 设置最新的 Superset (2019-08-11)
在 repo 文件夹中打开 shell,然后安装并激活虚拟环境:
使用符号链接为 python 3.6+ 更正 python 二进制文件
python3 -m venv lenv
source lenv/bin/activate
需要安装node来构建静态,只需安装python包'nodeenv':
pip install nodeenv
Nodeenv 类似于 virtualenv,但用于管理节点。
接下来使用 nodeenv 制作节点虚拟环境,将其放置在 nodeenv 目录中:
nodeenv lnenv
激活节点虚拟环境:
source lnenv/bin/activate
cd superset/assets
npm ci
全局安装 webpack(在这种情况下全局安装意味着它将进入 nodeenv 的虚拟文件夹):
npm install -g webpack webpack-cli
npm run build
最后,构建应该完成,文件应该放在 superset/assets/dist 中。
# Remove node_modules dir as it's no longer needed:
rm -rf node_modules
# cd back to project root
cd ../..
# Just in case install latest pip etc.
# Use python -m pip to avoid a possible issue where some packages
# attempt to write to global python repo..
python -m pip install --upgrade pip setuptools wheel
# Install project python packages
python -m pip install -r requirements.txt -r requirements-dev.txt
# Additionally install pyodbc, if one needs to connect to ms sql
pip install pyodbc
# Install superset in editable mode
pip install -e .
# Compile language files (gettext .po files)
fabmanager babel-compile --target superset/translations
# Append to PYTHONPATH if it already exists.
export PATH=$(pwd):$PATH
if [ -z "$PYTHONPATH" ]
then
export PYTHONPATH=$(pwd):$PYTHONPATH
else
export PYTHONPATH=$(pwd)
fi
# Can also adjust SUPERSET_HOME to store default sqlite db in a different place.
# export SUPERSET_HOME=$(pwd)/superset_home
export MAPBOX_API_KEY=your_mapbox_key...
从这里我们大致遵循 RELEASES\from_tarball_entrypoint.sh:
superset db upgrade
export FLASK_APP=superset
flask fab create-admin
superset load_examples
superset init
启动烧瓶开发服务器:
superset run -p 8005 --with-threads --reload --debugger