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イメージを自分でビルドする必要があります。
ただ、そんなに難しいこともなくて、
- ARM版Ubuntuをベースにする
- OpenJDKをインストール
- Metabaseをダウンロード
- 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サーバーの完成です。