MariaDB
futomaki.mariadb
A Docker Compose file for MariaDB alone, generated from the catalog and checked by the safety inspector. No account needed.
Relational database server forked from MySQL and community-developed since, with pluggable storage engines, wire compatibility for MySQL clients and replication built into the server.
MariaDB grew out of MySQL after its acquisition and stays close enough at the protocol level that most MySQL clients, drivers and tooling connect without modification. Storage engines are selected per table: InnoDB for transactional work, Aria for read-heavy tables, ColumnStore for analytical scans, among others. Replication ranges from primary-replica through to Galera multi-primary clusters and is part of the server rather than an add-on. A first deployment sets the root password through the environment, creates a database and user, and connects with a standard MySQL client.
You know it worked when
- The server accepts a connection from a MySQL-protocol client.
- The database and user created through environment variables exist with the expected grants.
- A table can be created, written to and read back.
- Data written before a container restart is present afterwards.
Known sharp edges
- Initialisation is refused unless a root password, a random-password flag or an explicit allow-empty-password flag is set in the environment.
- The data directory is initialised only on first start, so pointing an existing volume at a newer major version needs the upgrade tool run before the server behaves normally.
- Default character set and collation have changed between major versions and silently affect sorting and comparison of existing data.
- Divergence from MySQL has widened over time, so newer MySQL-specific SQL features are not guaranteed to work.