こんにちはnessyと申します。
BIツールのキャッチアップでubuntuにsupersetを導入しようとしたところ、インストールだけでも詰まるポイントがあり、かなり苦戦してしまいました(オープンソースあるあるですかね…)。githubコミュニティなどを参考に何とか実行にこぎつけたので、ここに備忘録を書かせていただきます。
主な詰まりポイント
- pythonのバージョンを3.9にする必要がある
- 一部パッケージをダウングレードする必要がある
- 環境変数FLASK_APPを設定する必要がある
0.実行環境
ubuntu22.04.1
superset2.0
anaconda 22.9.0
1.pythonのバージョンを3.9にする
自分のubuntu環境ではpythonの初期バージョンは3.10でした。調べる中でpythonのバージョンが3.10だとsupersetのインストールが上手くいかないようだったため、anacondaでpythonバージョンが3.9の仮想環境を作成していきます。(使用しているpythonのバージョンが3.9の場合、この工程は必要無いと思われます。)
https://www.anaconda.com/
上記サイトでanacondaをダウンロード後、ダウンロードしたファイルをbashで実行します。bash Anaconda3-2022.10-Linux-x86_64.sh
実行後、もしパスが通ってなかったらパスを通し、python3.9の仮想環境を作成します(first_envのところはお好きな名前で大丈夫です)。export PATH=~/anaconda3/bin:$PATH
conda create -n first_env python=3.9
source activate first_env
下記実行して仮想環境に入っていることが確認できれば大丈夫です。conda info -e
2.supersetインストール
先にいろいろなパッケージをインストールしておきます。sudo apt-get -y install python3-pip python3-distutils python3-dev python3-testresources
sudo apt-get -y install build-essential libssl-dev libffi-dev libsasl2-dev libldap2-dev
supersetをインストールします(ここでpythonのバージョンが3.10だとインストール途中にエラーが出たんですよね…)。pip3 install apache-superset
3.パッケージのダウングレード
supersetのバージョン確認をすると各パッケージのバージョンが出ると思います。superset --version
Python 3.9.13
Flask 2.2.2
Werkzeug 2.2.2
ここでapache-supersetのインストール時に一緒に入っていたパッケージの一部をダウングレードします(これやらないとパッケージの依存関係が上手くいかないようで…)。pip3 install flask==2.0.3
pip3 install werkzeug==2.0.3
pip3 install jinja2==3.0.1pip3 install wtforms==2.3.3
4.supersetを実行する
次に環境変数FLASK_APPを設定します。export FLASK_APP=superset
superset db upgrade
下記実行するとsuperset のユーザー名やパスワードを聞かれるので設定します。superset fab create-admin
supersetを実行します。
superset load_examples
superset initsuperset run -h 0.0.0.0 -p 8088 --with-threads --reload
ブラウザでlocalhost:8088に接続。
ログイン画面が出てくると思うので、先ほど設定したユーザー名とパスワードを打ち込みサインインします。
ログインできれば下記ページに行けると思います!
以上がSupersetを導入する方法になります。
参考になれば幸いです!