By Adam Charvat
Published 17th December 2021
Metabase is an easy and open-source way to visualise data from databases and create insightful dashboards via a powerful user interface without writing SQL.
In this guide, you will learn how to deploy Metabase from its official Docker image and set up a PostgreSQL database which Metabase will use to store its configuration.
Create a new PostgreSQL database. For increased security, keep SSL enabled and External Access disabled. You can start with the smallest compute plan with 4 GB of storage and one replica.
This PostgreSQL database will only be used to store Metabase config data, not for any analytics or dashboards. You will connect your databases for analytics once Metabase is set up.
Create a new secret group in your project and link the database. Then inherit the environment variable
JDBC_POSTGRES_URIas an alias
This will ensure that the database connection details are automatically injected into the environment and you don't have to manually copy and paste them.
Create a new deployment service that will be deploying an external image
metabase/metabase:latestfrom DockerHub. Port 3000 will be automatically detected and publicly exposed by default.
For service resources, we recommend at least nf-compute-50 (0.5 vCPU and 1024 MB memory) but you may choose a higher plan for increased performance (lower plans may not be enough for Metabase to start properly).
Once your service is created, you can view the start up by going to the container logs. The first time it runs Metabase will configure the database, therefore it can take longer than any subsequent runs. Once finished, go to the service URL and start by creating your first user and connecting your data!
Metabase supports connecting databases such as MySQL, MongoDB, PostgreSQL, BigQuery, Google Analytics and more. You can view the full list in Metabase documentation.
Northflank allows you to deploy your code and databases within minutes. Sign up for a Northflank account and create a free project to get started.
- Multiple read and write replicas
- Observe & monitor with real-time metrics & logs
- Low latency and high performance
- Backup, restore and fork databases
- Private and optional public load balancing as well as Northflank local proxy