跳到主要內容
在 GitHub 上編輯此頁面

從 PyPI 安裝 Superset



此頁面說明如何使用 在 PyPI 上發布的 apache-superset 套件來安裝 Superset。

作業系統相依性

Superset 將資料庫連線資訊儲存在其 metadata 資料庫中。為此,我們使用 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。有關 Superset 官方支援的 Python 版本清單,請參閱 pyproject.toml 檔案。我們建議使用 Python 版本管理器,例如 pyenv(以及 pyenv-virtualenv)。

提示

若要識別官方 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 is shipped in Python 3.6+ as venv instead of pyvenv.
# See https://docs.python.org/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

然後,您需要初始化資料庫

superset db upgrade
提示

請注意,某些設定對於 Superset 的生產環境實例是強制性的。特別是,Superset 若沒有使用者指定的 SECRET_KEY 值將無法啟動。請參閱設定 Superset

透過執行以下命令完成安裝

# 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

如果一切正常,您應該能夠在瀏覽器中導覽至 hostname:port(例如,預設情況下在本機為 localhost:8088),並使用您建立的使用者名稱和密碼登入。