跳到主要内容

从 PyPI 安装 Superset



本页介绍如何使用 PyPI 上发布的 `apache_superset` 软件包来安装 Superset。

操作系统依赖

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

Debian 和 Ubuntu

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

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

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

sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-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 版本管理器。

我们还要确保拥有最新版本的 `pip` 和 `setuptools`

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 is shipped in Python 3.6+ as venv instead of pyvenv.
# See https://docs.pythonlang.cn/3.6/library/venv.html
python3 -m venv venv
. venv/bin/activate

或者使用 pyenv-virtualenv

# Here we name the virtual env 'superset'
pyenv virtualenv superset
pyenv activate superset

激活虚拟环境后,您安装或卸载的所有 Python 软件包都将仅限于此环境。您可以通过在命令行运行 `deactivate` 来退出环境。

安装和初始化 Superset

首先,安装 `apache_superset`

pip install apache_superset

然后,定义强制配置 SECRET_KEY 和 FLASK_APP

export SUPERSET_SECRET_KEY=YOUR-SECRET-KEY
export FLASK_APP=superset

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

superset db upgrade

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

# Create an admin user in your metadata database (use `admin` as username to be able to load the examples)
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

如果一切正常,您应该能够在浏览器中导航到 `hostname:port`(例如,本地默认地址为 `localhost:8088`),然后使用您创建的用户名和密码登录。