Ich tracke schon seit einer Weile einige Gesundheitsdaten mit einer selbstgehosteten NocoDB Datenbank. Was bisher gefehlt hat, war die Visualisierung der Daten. Da kommt nun Metabase in’s Spiel. Dazu habe ich Metabase einfach in meinen NocoDB Stack integriert:
version: "2.1"
services:
nocodb:
container_name: nocodb-app
depends_on:
root_db:
condition: service_healthy
environment:
NC_DB: "mysql2://root_db:3306?u=USER&p=PW&d=DB"
image: "nocodb/nocodb:latest"
ports:
- "8080:8080"
restart: always
volumes:
- "nc_data:/usr/app/data"
root_db:
container_name: nocodb-db
environment:
MYSQL_DATABASE: DB
MYSQL_PASSWORD: PW
MYSQL_ROOT_PASSWORD: PW
MYSQL_USER: USER
healthcheck:
retries: 10
test:
- CMD
- mysqladmin
- ping
- "-h"
- localhost
timeout: 20s
image: "mysql:8.0.32"
restart: always
volumes:
- "db_data:/var/lib/mysql"
metabase:
image: metabase/metabase:latest
container_name: nocodb-metabase
volumes:
- "metabase_data:/metabase"
ports:
- "3000:3000"
depends_on:
root_db:
condition: service_healthy
volumes:
db_data: {}
nc_data: {}
metabase_data: {}
Die Services in’s selbe Netzwerk packen:
networks:
default:
external: true
name: default
In Metabase dann die Verknüpfung zur Datenbank herstellen.

Und schon kann das freudige Visualisieren losgehen.

So lassen sich auf die Schnelle wunderschöne Dashboards zusammenklicken.