Multi-Database Support
Simple Invoices supports four database engines. Choose the one that fits your infrastructure.
Supported Databases
SQLite for Zero-Config Setup
SQLite requires no database server: the entire database is a single file. Perfect for:
- Quick evaluation and testing
- Single-user installations
- Portable setups (copy the
.sqlitefile to migrate) - Docker development environments
Enable SQLite by setting database=sqlite in config/config.php. The database file lives at databases/sqlite/simpleinvoices.sqlite.
Switching Databases
Schema files are provided for each engine:
The database abstraction layer in include/init.php handles the differences between engines transparently.
Docker Support
The Docker image supports all four database backends out of the box. Set DB_ENGINE to mysql, mariadb, pgsql, or sqlite in your environment variables.