最近在折腾啊,想搞个superset玩玩,最新版本的包在window各种报错,水平有限实在搞不定。搞个别的系统的玩玩吧。我这里默认大家是买好了VPS了。
我这边使用的是ubuntu18.0 和centos7.6
第一步:更新系统
这里主要是考虑更新gcc等依赖
ubuntu18.0
sudo apt update
sudo apt upgrade
sudo apt install build-essential
依赖:
sudo apt-get install build-essential libssl-dev libffi-dev python3-dev python3-pip libsasl2-dev libldap2-dev default-libmysqlclient-dev
centos7.6
sudo yum update
sudo yum install wget
7.6的依赖:
sudo yum install -y gcc gcc-c++ libffi-devel python-devel python-pip python-w heel python-setuptools openssl-devel cyrus-sasl-devel openldap-devel
第二步:装anaconda
1.https://docs.anaconda.com/free/miniconda/ 下载对应版本,然后拿winscp拉过去,直接安装了
可以参考这个 https://blog.csdn.net/pdcfighting/article/details/111503057,我这不再赘述
使脚本可执行:
chmod +x Miniconda3-latest-Linux-x86_64.sh
运行安装脚本:
./Miniconda3-latest-Linux-x86_64.sh
按照提示进行安装,例如接受许可协议,选择安装路径,并安装Miniconda。
安装完成后,关闭并重新打开终端,或者手动激活Miniconda环境:
source ~/.bashrc
2.折腾虚拟环境(superset必须搞,那些包很乱啊),不搞会出事,我这里安装3.8.16版本对应superset 2.0.0
conda create --name superset python=3.8.16
conda activate superset
#更新更新,减少不必要的幺蛾子
pip install --upgrade pip
第三步:进入虚拟环境,安装superset
我装了2.0.0版本的,debug了一堆。一直有superset环境变量咋也弄不上索性直接find superset直接跑
官方的代码https://superset.apache.org/docs/installation/installing-superset-from-pypi:
superset db upgrade
# Create an admin user in your metadata database (use `admin` as username to be able to load the examples)
export FLASK_APP=superset
superset fab create-admin
# Load some data to play with
superset load_examples
# Create default roles and permissions
superset init
# To start a development web server on port 8088, use -p to bind to another port
superset run -p 8088 --with-threads --reload --debugger
下面进入疯狂Debug时间(我倒着写了从5-1看,熬夜写,懒得改了)
1.ModuleNotFoundError: No module named ‘wtforms.ext‘
python -m pip install WTForms==2.3.3
2.pkg_resources.VersionConflict(typing-extensions 3.10.0.2 (
python -m pip install typing-extensions==4.0.0
3.ModuleNotFoundError: No module named ‘werkzeug.wrappers.etag’
pip install Flask==2.0.3
#这里和第五点对应啊2.03的flask
pip install Werkzeug==2.0.3
4.ModuleNotFoundError: No module named ‘cryptography.hazmat.backends.openssl.x509’
pip install cryptography==2.9.2
pip install sqlalchemy-utils==0.36.6
reference:https://blog.csdn.net/qq_45796486/article/details/128606168
写的不错已赞~~
5.module ‘flask.json’ has no attribute ‘JSONEncoder’
pip install Flask==2.0.3
简单粗暴直接降级
Error: Could not locate a Flask application. You did not provide the “FLASK_APP” environment variable, and a “wsgi.py” or “app.py” module was not found in the current directory.
export FLASK_APP=superset
到这了,恭喜上岸
公网访问测试用这个
superset run -h 0.0.0.0 -p 8088
好了,晚安~~