Centos7环境下安装
centos7安装略
安装后 ip add 查看ip
systemctl stop firewalld.service
systemctl disable firewalld.service
关闭防火墙后用远程工具连接
1.安装python3替代centos7自带的python2.7
yum install -y wget gcc make
yum install -y openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel
wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
tar -zxvf Python-3.6.5.tgz
解决Python3 No module named '_sqlite3'错误
下载安装包: wget https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
解压: tar -xvzf sqlite-autoconf-3240000.tar.gz
进入目录: cd sqlite-autoconf-3240000/
编译: ./configure --prefix=/usr/local/sqlite
安装: make -j4&&sudo make install
此时我们进行编译安装python3
修改setup.py
vi setup.py
查找" sqlite_inc_paths" 新增 vi查找命令是 /sqlite_inc_paths
'/usr/local/sqlite/include'
'/usr/local/sqlite/include/sqlite3'
完成后如下:
./configure --prefix=/usr/local/python3 --enable-loadable-sqlite-extensions
make && sudo make install
ln -s /usr/local/python3/bin/pyton3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
2.开始安装Superset
pip3 install --upgrade pip
yum upgrade python-setuptools(升级Python组件)
yum install -y gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel cyrus-sasl-devel openldap-devel
pip3 install cryptography
pip3 install superset
安装众多的Python依赖包
在github上下载这个文件
wget https://github.com/Warding/InternetRecords/blob/master/%E5%B7%A5%E5%85%B7%E4%BD%BF%E7%94%A8/superset_requirements.txt
根据文件安装依赖(文件必须确认能够找到)
pip3 install -r superset_requirements.txt
初始化db环境
superset db upgrade
账户设定
export FLASK_APP=superset
创建superset账户,以便在后期启动之后登录
flask fab create-admin (这里可能会报错,找不到某个命令,使用pip install command对那个命令进行安装)
下载样例数据(这里有可能下载报错,不影响后面的操作)
superset load-examples
superset环境初始化
superset init
启动superset(分为两种启动方式,后台启动和直接启动)
superset run -p 8088 --with-threads --reload --debugger(默认为localhost)
superset run -h 192.168.000.000 -p 8088 --with-threads --reload --debugger(可以设置ip进行远程访问)
nohup superset runserver -p 500(后台运行,注意最新的superset-0.30.1版本没有runserver这个命令)
3.官方建议在容器下安装Superset
yum upgrade python-setuptools
yum install -y gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel cyrus-sasl-devel openldap-devel
pip3 install cryptography
pip3 install virtualenv
python3 -m venv venv -- 新建一个名为venv的容器空间,同时也会新建在当前目录下新建一个venv的文件夹,请提前切换好工作文件夹
. venv/bin/activate -- 进入venv的容器环境
pip3 install superset -- 容器环境下安装superset
---以下是重点,最多坑的地方,因为superset的运行依赖很多第三方库代码,所以安装python的依赖包并保证完整性很费事,有人整理了一个文档将这些依赖包进行汇总,下载此文档后,在本地按照文件安装依赖包就好
# wget https://github.com/Warding/InternetRecords/blob/master/%E5%B7%A5%E5%85%B7%E4%BD%BF%E7%94%A8/superset_requirements.txt
# pip3 install -r superset_requirements.txt -- 安装依赖包
# superset db upgrade -- 初始化db环境
# export FLASK_APP=superset --账户设定
# flask fab create-admin --创建账户按提示输入账密就好
# superset load-examples --下载样例数据,可不执行
# superset init --superset环境初始化
# superset run -p 8088 -h 192.168.2.1 --with-threads -- superset 启动(这里面我指定了端口和IP,分别是-p 和 -h 参数,建议指定成自己的服务器IP和某个端口,网页访问的时候,**还需要将这个端口对外开放,不然你本地登录网页访问会无法成功**)
tips
出现superset 使用问题,比如缺失什么Python的第三方依赖库,请一定要在容器空间内安装所需的依赖包,例如需要连接mysql,你需要进入venv容器下进行安装pip3 install pymysql,然后需要重启superset
退出容器命令 deactivate
为避免出现关闭shell窗口导致superset无故退出,建议在容器下nohup 启动superset,
# nohup superset run -p 8088 -h 192.168.2.1 --with-threads &