Metabaseをローカルでビルドする

2022.1.28

これに従ってローカルでMetabaseをビルドしてみます。

https://www.metabase.com/docs/latest/developers-guide/build.html

環境

  • macOS Big Sur (Ver 11.6.2)
  • Apple M1 Chip

ビルド環境の構築

Closureのインストール

Closureをインストールします。

brew install clojure/tools/clojure

エラーが出ました。

Error: Cannot install under Rosetta 2 in ARM default prefix (/opt/homebrew)!
To rerun under ARM use:
    arch -arm64 brew install ...
To install under x86_64, install Homebrew into /usr/local.

こちらの記事によると先頭にarch -arm64を付与してやると解決するらしいです。

https://shiro-changelife.com/cannot-install-under-rosetta/

arch -arm64 brew install clojure/tools/clojure

JDK11のインストール

こちらのサイトから該当OSのイメージをダウンロードしてインストールしました。

https://adoptopenjdk.net/releases.html

Node.jsとyarn packageのインストール

これらはすでにインストール済みです。

$ node -v
v16.12.0

$ yarn -v
1.22.17

ビルドする

Metabaseをクローンしてきます。

gh repo clone metabase/metabase

ビルドコマンドを実行。

./bin/build

起動する

cd ./target/uberjar/
java -jar metabase.jar

起動したので http://localhost:3000/ にアクセスするとMetabaseが開けました。

チャートに変更を加えてみる

Grid Mapの色を変更してみます。

Beforeはこのような感じです。

https://user-images.githubusercontent.com/1194571/151482340-87127a11-c3d5-4aa3-a5bf-ecbf7d5821ef.png

緑〜赤のグラデーションの色を白〜黒に変えてみました。

https://github.com/metabase/metabase/blob/master/frontend/src/metabase/visualizations/components/LeafletGridHeatMap.jsx#L60

上記の箇所をこのように変えました。

const colorScale = d3.scale
        .linear()
        .domain([min, max])
        .interpolate(d3.interpolateHcl)
        .range([d3.rgb(color("#fff")), d3.rgb("#000")]);

そしてビルドし直すとこのように色が変わりました。

https://user-images.githubusercontent.com/1194571/151482384-fefabbd5-69ba-4ec2-9ba0-a8111b5e694c.png

ローカルでデバッグするには?

パッと調べて見当たらなかったのでフォーラムにトピックを立ててみました。

https://discourse.metabase.com/t/how-to-develop-metabase-on-local/18535

[以下、追記] こちらの記事にてデバッグを試してみました。

Metabaseをローカルでデバッグする

© 2019-2022 kwst.site.