Self-Hosted Metabase su piattaforma Linux/ARM64 e Docker
Avviare un container Metabase attraverso Docker e Build di un'immagine per piattaforma ARM64 attraverso Dockerfile custom
Panoramica su Metabase
Metabase è una piattaforma open source per l'analisi dei dati e la creazione di report. Con Metabase, gli utenti possono creare facilmente dashboard e visualizzazioni dei dati, senza la necessità di scrivere codice o avere conoscenze avanzate in materia di database.
Immagine standard per Self-Hosted Docker di Metabase Open Source Edition
Nella documentazione ufficiale sono descritti i passi per avviare velocemente una istanza docker con le immagini ufficiali di Metabase
Per eseguire Metabase su Docker, è necessario prima assicurarsi di avere Docker installato sul proprio sistema. Una volta installato Docker, è possibile scaricare l'immagine ufficiale di Metabase da Docker Hub con il seguente comando:
docker pull metabase/metabase:latest
Una volta scaricata l'immagine, è possibile utilizzare il comando docker run
per avviare un container di Metabase utilizzando l'immagine appena scaricata. Ecco un esempio di come avviare un container di Metabase utilizzando il comando docker run
:
docker run -d -p 3000:3000 --name my-metabase metabase/metabase
Questo comando avvierà un container di Metabase in modalità detached (-d) e lo mapperà alla porta 3000 del sistema host (-p 3000:3000). È inoltre possibile assegnare un nome al container con l'opzione --name
.
Una volta avviato il container, sarà possibile accedere all'interfaccia di amministrazione di Metabase tramite il browser all'indirizzo http://localhost:3000.
Infine, sarà possibile seguire la procedura guidata di configurazione iniziale di Metabase per completare l'installazione.
Custom Dockerfile per piattaforma ARM64
Alcuni servizi Cloud utilizzano piattaforme Ampere, una famiglia di processori basati sull'architettura ARM64 V8 sviluppata da Ampere Computing.
I processori Ampere sono noti per le loro prestazioni elevate e l'efficienza energetica, e sono stati utilizzati in molti sistemi di computing di alto livello come le istanze OCI Cloud Free Tier
Sfortunatamente l'immagine ufficiale di Metabase non é ancora rilasciata con una immagine compatibile con le piattaforma ARM64 ma sará possibile comunque comunque eseguire un'istanza Metabase sui processori ARM64 attraverso un custom Dockerfile cosi composto:
FROM ubuntu
ENV FC_LANG en-US LC_CTYPE en_US.UTF-8
# dependencies
RUN apt-get update
RUN apt-get install -yq bash fonts-dejavu-core fonts-dejavu-extra fontconfig curl openjdk-11-jre-headless
RUN apt-get clean
RUN rm -rf /var/lib/{apt,dpkg,cache,log}/ && \
mkdir -p /app/certs && \
mkdir -p /plugins && chmod a+rwx /plugins && \
useradd --shell /bin/bash metabase
WORKDIR /app
# copy app from the offical image
COPY --from=metabase/metabase:latest /app /app
RUN chown -R metabase /app
USER metabase
# expose our default runtime port
EXPOSE 3000
# run it
ENTRYPOINT ["/app/run_metabase.sh"]
Per eseguire Metabase su Piattaforma ARM, è necessario prima effettuare il Build dell'immagine di Metabase con il seguente comando:
docker build -t metabase-custom:latest .
Una volta effettuato il build dell'immagine, è possibile utilizzare il comando docker run
per avviare un container di Metabase utilizzando l'immagine appena compilata. Per avviare il container utilizzando il comando docker run
:
docker run -d -p 3000:3000 --name my-metabase metabase-custom:latest
Come per la versione ufficiale questo comando avvierà un container di Metabase per ARM64 in modalità detached (-d) e lo mapperà alla porta 3000 del sistema host (-p 3000:3000).
Discussione