Skip to main content
Edit this page on GitHub

从PyPI安装Superset



本页面描述了如何使用发布在PyPI上的apache-superset包来安装Superset。

操作系统依赖

Superset将其数据库连接信息存储在其元数据数据库中。为此,我们使用cryptography Python库来加密连接密码。不幸的是,这个库有操作系统级别的依赖。

Debian和Ubuntu

以下命令将确保安装所需的依赖项:

sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip libsasl2-dev libldap2-dev default-libmysqlclient-dev

在Ubuntu 20.04中,以下命令将确保安装所需的依赖项:

sudo apt-get install build-essential libssl-dev libffi-dev python3-dev python3-pip libsasl2-dev libldap2-dev default-libmysqlclient-dev

Fedora和基于RHEL的Linux发行版

使用yum包管理器安装以下包:

sudo yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel cyrus-sasl-devel openldap-devel

在较新版本的CentOS和Fedora中,您可能需要使用dnf安装一组略有不同的包:

sudo dnf install gcc gcc-c++ libffi-devel python3-devel python3-pip python3-wheel openssl-devel cyrus-sasl-devel openldap-devel

此外,在CentOS上,您可能需要升级pip以使安装工作:

pip3 install --upgrade pip

Mac OS X

如果您不在OS X的最新版本上,我们建议升级,因为我们发现许多人遇到的问题与旧版本的Mac OS X有关。更新后,安装最新版本的XCode命令行工具:

xcode-select --install

我们不建议使用系统安装的Python。相反,首先安装homebrew管理器,然后运行以下命令:

brew install readline pkg-config libffi openssl mysql postgresql@14

您应该安装最新版本的Python。请参阅pyproject.toml文件,了解Superset官方支持的Python版本列表。我们建议使用像pyenv(以及pyenv-virtualenv)这样的Python版本管理器。

tip

要识别官方docker镜像使用的Python版本,请参阅Dockerfile。为较新版本的Python发布的其他docker镜像可以在此文件中找到。

让我们也确保我们有最新版本的pipsetuptools

pip install --upgrade setuptools pip

最后,您可能需要为某些Python包设置LDFLAGS和CFLAGS以正确构建。您可以使用以下命令导出这些变量:

export LDFLAGS="-L$(brew --prefix openssl)/lib"
export CFLAGS="-I$(brew --prefix openssl)/include"

这些变量现在将在pip安装要求时可用。

Python虚拟环境

我们强烈建议在虚拟环境中安装Superset。Python自带了virtualenv。如果您使用pyenv,您可以安装pyenv-virtualenv。或者您可以使用pip安装它:

pip install virtualenv

您可以使用以下命令创建并激活虚拟环境:

# virtualenv在Python 3.6+中作为venv而不是pyvenv提供。
# 请参阅https://docs.python.org/3.6/library/venv.html
python3 -m venv venv
. venv/bin/activate

或者使用pyenv-virtualenv:

# 这里我们将虚拟环境命名为'superset'
pyenv virtualenv superset
pyenv activate superset

一旦激活了虚拟环境,您安装或卸载的所有Python包都将局限于此环境。您可以通过在命令行中运行deactivate来退出环境。

安装和初始化Superset

首先,从安装apache-superset开始:

pip install apache-superset

然后,您需要初始化数据库:

superset db upgrade
tip

请注意,对于Superset的生产实例,某些配置是强制性的。特别是,Superset在没有用户指定的SECRET_KEY值的情况下不会启动。请参阅配置Superset

通过运行以下命令完成安装:

# 在元数据数据库中创建一个管理员用户(使用 `admin` 作为用户名以便能够加载示例)
export FLASK_APP=superset
superset fab create-admin

# 加载一些数据以供使用
superset load_examples

# 创建默认角色和权限
superset init

# 在端口 8088 启动开发服务器,使用 -p 绑定到另一个端口
superset run -p 8088 --with-threads --reload --debugger

如果一切顺利,你应该能够在浏览器中访问 hostname:port(例如,默认情况下在本地访问 localhost:8088),并使用你创建的用户名和密码登录。