c0d3man52

Webサイト制作

Appleシリコン MacでローカルMetabaseサーバーをDockerで構築する

ARM用のDockerイメージが用意されていないMetabaseを、AppleシリコンMacで使う方法をまとめます。

公開日: 2025.1.9

端末

筆者の現在のメイン開発端末はM1 MacBook Air (Late 2020)で、スペックは以下です。

  • CPU: M1 8コア
  • GPU: M1 7コア
  • Neural Engine: 16コア
  • メモリ: 8GB
  • OS: macOS 15.2(24C101)

Metabase公式のDockerイメージはARMに非対応

Metabaseの公式DockerイメージはARMに非対応なので、Dockerイメージを自分でビルドする必要があります。

ただ、そんなに難しいこともなくて、

  1. ARM版Ubuntuをベースにする
  2. OpenJDKをインストール
  3. Metabaseをダウンロード
  4. Metabaseサーバーを起動

ということをやっているだけです。

Dockerflieは以下のようになります。

# ベースイメージを指定 (Ubuntu 24.04 ARM64)
FROM arm64v8/ubuntu:24.04

# アップデートと必要なパッケージのインストール
RUN apt-get update && \
    apt-get install -y \
        default-jdk \
        curl && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*

# 作業ディレクトリの指定
WORKDIR /opt/metabase

# Metabaseのダウンロード
RUN curl -L -o metabase.jar https://downloads.metabase.com/v0.52.5/metabase.jar

# Metabaseの起動コマンド
CMD ["java", "-jar", "/opt/metabase/metabase.jar"]

MetabaseのダウンロードのURLは、その時の最新版を指定してください。

Download the Open Source metabase.jar | Metabase

Dockerイメージのビルド

Dockerfileを作成したら、Dockerイメージをビルドします。

docker build -t metabase-ubuntu-arm:24.04 .

イメージ名が「metabase-ubuntu-arm」でTagが「24.04」です。ここは自由に変更できます。

Metabaseサーバーの起動

Dockerイメージがビルドできたら、Metabaseサーバーを起動します。

docker run -p 3300:3000 -d metabase-ubuntu-arm:24.04

本来はポート3000なんですが、自分の場合はポート3000が埋まっていたので、3300に指定して、それをコンテナの3000にマッピングしています。

localhost:3300にアクセスすると、Metabaseの設定画面が表示されます。

あとは、ガイダンスに従って進めていけば、Metabaseサーバーの完成です。