Self-Hosted Databases

12 stacks for anyone who wants a managed database without the managed-database bill. Each one is a vanilla compose.yaml that runs locally with docker compose up, with a measured RAM footprint and a one-step deploy to Miget from $7/month flat.

#the stacks

ClickHouse Cluster

3-node ClickHouse cluster - one shard, three replicas, embedded Keeper. Real replicated OLAP without ZooKeeper pods.

3 services 6 GiB RAM from $49/mo

MariaDB

The community MySQL fork, as a single self-hosted node - drop-in compatible, on a flat plan.

1 service 1 GiB RAM from $7/mo

MariaDB Galera

3-node synchronous multi-primary MySQL-family HA on the official image - every node writes, any node can die.

3 services 3 GiB RAM from $25/mo

MariaDB Replication

Asynchronous primary/replica MariaDB - a writable primary streaming to a read-only replica.

2 services 2 GiB RAM from $13/mo

MongoDB Replica Set

3-node MongoDB 8 replica set (rs0) on the stock image - self-initiating, internal-only, Atlas-shaped without the Atlas bill.

4 services 3.1 GiB RAM from $25/mo

MySQL

The world`s most popular open-source database, as a single self-hosted node on a flat plan.

1 service 1 GiB RAM from $7/mo

MySQL InnoDB Cluster

experimental

Native MySQL HA via Group Replication - 3 nodes, automatic primary election and failover.

4 services 3.3 GiB RAM from $25/mo

Oracle Database Free

The actual Oracle Database, free for production under the FUTC license - 2 cores, 2 GB RAM, 12 GB data, zero invoices.

1 service 3 GiB RAM from $25/mo

Percona Server

A drop-in MySQL replacement with deeper instrumentation and performance tuning, single node.

1 service 1 GiB RAM from $7/mo

Percona XtraDB Cluster

experimental

Synchronous multi-primary MySQL HA (Galera) - 3 nodes, every node writable, no replica lag.

3 services 3 GiB RAM from $25/mo

SQL Server

Microsoft SQL Server 2025 on Linux - Express edition with its free production license, internal-only, one variable to accept the EULA.

1 service 2 GiB RAM from $13/mo

TimescaleDB

Postgres for time series - hypertables, columnar compression, continuous aggregates - in a single internal-only node.

1 service 2 GiB RAM from $13/mo

#what each one needs

RAM and disk are what the compose file allocates, not guesses, and the plan is the smallest one that holds it. Databases and caches come managed and included on Miget rather than billed per instance.

StackServicesRAMDiskFits plan
ClickHouse Cluster 3 6 GiB 60 GB $49/mo
MariaDB 1 1 GiB 10 GB $7/mo
MariaDB Galera 3 3 GiB 15 GB $25/mo
MariaDB Replication 2 2 GiB 20 GB $13/mo
MongoDB Replica Set 4 3.1 GiB 30 GB $25/mo
MySQL 1 1 GiB 10 GB $7/mo
MySQL InnoDB Cluster 4 3.3 GiB 30 GB $25/mo
Oracle Database Free 1 3 GiB 20 GB $25/mo
Percona Server 1 1 GiB 10 GB $7/mo
Percona XtraDB Cluster 3 3 GiB 30 GB $25/mo
SQL Server 1 2 GiB 10 GB $13/mo
TimescaleDB 1 2 GiB 20 GB $13/mo

Cost against the managed equivalents, per stack: ClickHouse Cluster , MariaDB , MariaDB Replication , MongoDB Replica Set , MySQL , MySQL InnoDB Cluster , Oracle Database Free , Percona Server , Percona XtraDB Cluster , SQL Server , TimescaleDB .

Browse the rest of the catalogue

140 stacks in total, from databases and queues to AI infrastructure - all MIT licensed, all runnable locally, all deployable in one step.