この記事のポイント
- Apache Superset 4.1.1 を Ubuntu 24.04 上で
docker composeを使いセルフホスト構築する - 公式 Docker イメージ(
apache/superset:4.1.1)には Python 3.10.15・Flask 2.3.3・pandas 2.0.3 が同梱済み /healthエンドポイントがHTTP 200 OKを返せば起動成功。起動まで約40秒- データソース(SQLite → PostgreSQL → クラウドDWH)は後から追加できる。まず動かすことを優先
- VPS は最低 2vCPU / 2GB RAM を選ぶ。1GB プランだとメモリ不足でクラッシュします
BIツールをクラウドSaaSで使うと、データを外部サービスに送ることになります。社内データや個人プロジェクトのデータを扱う場合、自前のVPSや自宅サーバーで動かしたい、というのは自然な発想です。
Apache Superset はオープンソースのBIプラットフォームです。ダッシュボード作成・SQL Lab(ブラウザからSQLを書いて実行)・チャート作成が1つのUIにまとまっています。実際に Ubuntu 24.04 上で動かしてみると、起動から初期ログインまで10分かかりませんでした。本記事では Docker Compose を使った最短構築手順と、実際に動かして気づいた点を書きます。
注意
本記事のコマンドは Ubuntu 24.04 LTS + Docker 29.5.3 + apache/superset:4.1.1 で検証しています。バージョンが異なると設定オプションが変わる場合があります。また Superset はリソースを食います。1GB RAM のプランでは不足なので、最低 2GB のプランを用意してください。
動作確認済み環境
この記事を書くにあたって実際に動かした環境は次のとおりです。
| 項目 | 値 |
|---|---|
| OS | Ubuntu 24.04.4 LTS(Noble Numbat) |
| Docker | 29.5.3 |
| Superset イメージ | apache/superset:4.1.1 |
| Python(イメージ内) | 3.10.15 |
| 検証日 | 2026-06-19 |

Apache Superset とは
Apache Superset は AirBnB 発のBIツールで、現在は Apache Software Foundation がメンテナンスしています。Tableau や Looker の代替として使われることが多く、SQLAlchemy 経由でほぼあらゆるデータベースに接続できるのが強みです。PostgreSQL・MySQL・SQLite はもちろん、BigQuery・Snowflake・Redshift にも対応しています。
UI は React ベースで、ドラッグ&ドロップでダッシュボードを組み立てられます。また SQL Lab という機能でブラウザからSQLを書いて直接実行でき、Jupyter Notebook 的な使い方もできます。

Docker Compose で構築する
公式の推奨手順は Docker Compose です。Superset 本体・Redis・PostgreSQL(または SQLite)を1つの compose ファイルで管理します。ここでは最小構成(SQLite + Redis)から始めます。
手順1:Docker のインストールを確認する
Ubuntu 24.04 に Docker がまだ入っていない場合は先にインストールしてください(apt 版ではなく Docker 公式リポジトリ版を推奨します)。
手順2:Superset の Docker イメージを pull する
まずイメージだけ先に落としておきます。942MB あるので、VPS の帯域によっては数分かかります。
手順3:docker-compose.yml を作成する
作業ディレクトリを作って compose ファイルを置きます。
SUPERSET_SECRET_KEY について
SUPERSET_SECRET_KEY はセッション署名に使われます。推測されにくいランダムな文字列を設定してください。生成コマンド例: openssl rand -base64 42
手順4:初期化して起動する
compose を起動すると、DBマイグレーション → 管理者ユーザー作成 → superset init(ロール・権限初期化)の順に自動実行されます。
手順5:ヘルスチェックで起動を確認する
ログが流れ終わったら /health を叩いて確認します。私の環境では起動まで約39秒かかりました。

ブラウザからアクセスする
http://<サーバーIP>:8088 にアクセスするとログイン画面が表示されます。

手順4で設定したユーザー名(admin)とパスワードでログインします。ログイン後は Dashboard List が表示されます。初期状態ではサンプルダッシュボードは入っていないので空です。

SQL Lab でクエリを実行してみる
上部メニューの「SQL」→「SQL Lab」でクエリエディタが開きます。左側のデータベース選択で examples(初期から入っているサンプルDB)を選び、SQL を書いて実行できます。

正直、SQL Lab はかなり使いやすいです。補完が効くし、結果テーブルをそのままチャートに変換できます。Jupyter Notebook と Tableau の中間にいる感覚で、データ分析の入口として馴染みやすいと思います。
チャートを作る
上部メニューの「Charts」から新規チャートを作れます。データソース・グラフタイプを選んでドラッグ&ドロップで構成するので、SQL が書けなくてもある程度は操作できます。

よくあるエラーと解決策
①起動しない・ポートが開かない
まずログを確認します。
よくある原因は SUPERSET_SECRET_KEY の未設定、またはポート 8088 が他プロセスに使われているケースです。ss -tlnp | grep 8088 で確認してください。
②「Invalid login. Please try again.」が出る
管理者ユーザーの作成に失敗している可能性があります。以下のコマンドで手動作成できます。
③OOMでコンテナが落ちる
メモリ不足です。Superset は起動時に相当なメモリを使います。最低 2GB RAM、できれば 4GB を用意してください。1GB プランでは起動直後にクラッシュします(実際に確認しました)。
VPS のプランを選ぶとき
Superset は「とりあえず動く」だけなら 2GB RAM で十分ですが、複数ユーザーが同時にダッシュボードを操作すると重くなります。本格運用なら 4vCPU / 8GB RAM 程度を見ておいてください。
Ubuntu 24.04 の必要パッケージ(ソースインストールの場合)
Docker を使わずに pip install apache-superset でインストールする場合、Ubuntu 24.04 では以下のビルド依存が必要です。

ただしこの方法はビルド時間がかかる上に依存関係の衝突を自分で解決する必要があります。よほどカスタマイズしたい理由がない限り Docker 版を使うほうが楽です。
VPS 選びの参考
Superset をセルフホストするなら、東京リージョンがあるVPSを選ぶと応答遅延が小さくなります。以下は私が比較した主要4社です。
| VPS | 2GB RAM プラン | 東京リージョン | 日本語サポート | 評価 |
|---|---|---|---|---|
| Vultr | $12/月〜 | あり | なし(英語) | ★★★★★ |
| DigitalOcean | $14/月〜 | なし(最寄シンガポール) | なし(英語) | ★★★★☆ |
| Linode (Akamai) | $12/月〜 | あり | なし(英語) | ★★★★☆ |
| ConoHa VPS | 約1,200円/月〜 | あり(東京・大阪) | あり | ★★★★☆ |
コスパと安定性のバランスから、Vultr の東京リージョンを使うことが多いです。

まとめ
Apache Superset 4.1.1 を Ubuntu 24.04 上で Docker Compose を使って構築する手順を説明しました。
- 公式イメージ(
apache/superset:4.1.1)は Python 3.10.15・Flask 2.3.3・pandas 2.0.3 を同梱 docker compose up -d後、約39秒で/health → OKを確認- 最低 2GB RAM が必要。1GB プランは起動でクラッシュする
- SQL Lab でブラウザからSQLが書ける。データソース接続は SQLite から始めて PostgreSQL・BigQuery へ段階的に移行できる
「自分のデータを外に出したくない」「既存の PostgreSQL に接続するダッシュボードがほしい」という用途に素直に向いています。セットアップ自体は思ったより単純なので、試してみる価値はあります。
VPSのセットアップ手順は Ubuntu サーバー初期設定、Docker のインストール方法は Ubuntu に Docker をインストールする も参考にしてください。



コメント