Skip to content

Deploy Metabase with the Metabase template

Deployment

Deploy Metabase with the Metabase template

Stand up Metabase, an open-source BI tool, on a single Quake AI instance using the validated OpenTofu template metabase. You apply the template, complete the setup wizard, connect a warehouse, and build a first dashboard.

Metabase is the analyst-facing layer over a warehouse you already run. This is a self-hosted tool you operate, not a managed BI service.

Monthly cost estimate

Pricing calculator ↗

Sized as a custom package on shared vCPU.

Starting template$15.50/mo

Monthly total for the required template above. Use the configurator below to add optional pieces and see the total update.

What each resource is for

Metabase host

s1a.small · 2 shared vCPU, 2 GiB RAM, 0.5 Gbps

Runs Metabase in Docker for self-service BI dashboards and SQL questions against your warehouse.

Metabase with the embedded H2 app database runs on 2 vCPU and 2 GiB RAM. Size up for many concurrent users or when you use an external Postgres app database.

$16.50/mo

Compute shown per role at custom-package rates ($29/dedicated vCPU, $7.25/shared vCPU, $1/GiB RAM). The headline above is the billed total: the cheaper of a named plan and the custom package, plus add-ons.

Included in baseline

s1a.small

2 shared vCPU, 2 GiB RAM, 0.5 Gbps

$16.50

Compute + RAM rate basis

2 vCPU + 2 GiB RAM at $29/dedicated vCPU, $7.25/shared vCPU, $1/GiB RAM (regular). Totals apply the flat −$5/mo package promotion.

—

Block storage (50 GiB)

50 GiB at $0.08/GiB/mo

$4.00

Public IP (included)

1 included with the custom package

$0.00

Package promotional discount

Flat −$5.00/mo on the custom package (same promotion as named plans).

$-5.00

Included at no charge

These line items are zero on Quake AI. Many other providers meter them separately.

Data transfer (inbound and outbound)

Unlimited data transfer on every plan; Quake AI does not meter per-GB egress.

AWS, GCP, and Azure meter outbound transfer per GB. DigitalOcean and Hetzner include an allowance on compute plans, then charge overage.

Learn more
$0.00

Private networking

Private networks, subnets, Neutron routers, and security groups are included with the plan.

VPC objects are usually free to create elsewhere, but NAT gateways bill hourly plus per-GB processed. Quake AI uses router SNAT with no separate NAT line item.

$0.00

Control-plane API requests

OpenStack API calls for provisioning and management are included.

Some managed services on other clouds meter API calls or charge for premium control-plane features.

$0.00

Pricing data last validated: . For current rates, check quake.ai/pricing.

Prerequisites#

You need:

  • OpenTofu 1.6.0 or later installed locally.
  • Your OpenStack credentials sourced into the shell (source openrc.sh). See the OpenStack CLI guide.
  • An SSH keypair that already exists in your project.
  • A copy of the metabase template directory from the template reference page.
  • Your workstation's public IP address if you plan to open port 3000 for first-boot setup (curl -sS https://api.ipify.org).

A self-managed PostgreSQL warehouse is optional for this walkthrough but required for real dashboards. Deploy the warehouse first if you do not have one.

Step 1: Set the variables and apply the template#

The UI listens on port 3000 over plain HTTP. The security group restricts port 3000 to editor_allowed_cidr, which defaults to the private network only. To reach the UI from your workstation for setup, set editor_allowed_cidr to your public IP.

bash
cp terraform.tfvars.example terraform.tfvars
HCL
key_name            = "YOUR_KEY_NAME"
editor_allowed_cidr = "YOUR_IP/32"
bash
tofu init
tofu plan
tofu apply

When the apply finishes, record floating_ip and ui_url from tofu output.

Step 2: Complete the setup wizard#

cloud-init takes a minute or two after the instance reaches ACTIVE. Open ui_url (for example http://YOUR_FLOATING_IP:3000) in your browser.

When the setup screen appears, enter an email, company name, and admin password. Metabase creates the admin account and opens the home screen.

Step 3: Connect a warehouse and save a question#

  1. Open Admin > Databases > Add database.
  2. Choose PostgreSQL and enter the private IP, database name, user, and password for your self-managed PostgreSQL warehouse.
  3. Click Save. Metabase syncs schemas and tables.
  4. Open New > Question, pick a table, and save a simple count or filter question.

You now have a self-hosted BI layer over a warehouse on Quake AI.

Step 4 (optional): Serve the UI over HTTPS#

Put Caddy or Nginx in front of Metabase on ports 80 and 443, point a DNS A record at the floating IP, and proxy to 127.0.0.1:3000. See How to point a domain at a Quake AI resource.

Tear down#

bash
tofu destroy

See also#

Before this

Quick answers

Was this page helpful?