Jellydash can now run with SQLite!
This gives new installations a lighter option with one container and one database file. MariaDB is still the default and existing installations do not need to change anything.
- Added an optional SQLite setup for new installations.
- Added a checked MariaDB-to-SQLite migration command for anyone who wants to switch.
- The migration keeps IDs, timestamps, settings and history intact, verifies every copied value, and leaves the original MariaDB database untouched.
- Added MariaDB and SQLite test coverage, including concurrent background writes and a real Docker boot test.
- Fixed the History footer showing the all-time total while filters were active.
- Added a small What's new window for important releases. It appears once and can be opened again from the sidebar.
New installations
The README now has two simple Quick Start options:
- MariaDB (default): Jellydash and MariaDB run together.
- SQLite (optional): Jellydash runs by itself and stores its data in
./sqlite-data/jellydash.sqlite.
See the Quick Start for both options.
Both choices use docker-compose.yml, so normal Compose commands, aliases and update scripts work the same way.
Existing MariaDB installations
You do not need to migrate. Your current setup continues working exactly as before.
Update normally with:
docker compose pull && docker compose up -dExisting SQLite installations
If you installed SQLite using the first v1.2.0 instructions and there is no docker-compose.yml beside docker-compose.sqlite.yml, make it the default once:
cp docker-compose.sqlite.yml docker-compose.ymlIf docker-compose.yml is your old MariaDB setup, preserve it first:
cp -n docker-compose.yml docker-compose.mariadb.yml
cmp -s docker-compose.yml docker-compose.mariadb.yml && cp docker-compose.sqlite.yml docker-compose.yml && echo "SQLite is now the default Compose setup"These commands only copy the Compose files. They do not change either database.
Moving from MariaDB to SQLite
This is completely optional. Stop Jellydash before the copy so no plays or settings change during the migration.
First preserve your current MariaDB Compose file for rollback. Continue only when it prints MariaDB Compose backup verified:
cp -n docker-compose.yml docker-compose.mariadb.yml
cmp -s docker-compose.yml docker-compose.mariadb.yml && echo "MariaDB Compose backup verified"Then run:
curl -LO https://raw.githubusercontent.com/themartz90/jellydash/main/docker-compose.sqlite.yml
docker compose pull app
docker compose stop app
mkdir -p sqlite-data
docker compose run --rm --no-deps -v "$(pwd)/sqlite-data:/export" app php bin/console.php database:migrate-to-sqlite /export/jellydash.sqlite --confirm-stopped
docker compose down
cp docker-compose.sqlite.yml docker-compose.yml
docker compose up -dThe migration checks every copied value before reporting success. Keep your old MariaDB volume until you have checked the SQLite install and made a backup.
Full migration and rollback notes are in the README.
Happy Monitoring 👀