Skip to content

restore database

Maxime Labelle edited this page Feb 8, 2026 · 8 revisions

The Postgres database can be restored using the following commands.

Stop application

To safely restore the database, the application must be stopped:

docker compose -f /opt/simplelogin/docker-compose.yaml stop email
docker compose -f /opt/simplelogin/docker-compose.yaml stop app
docker compose -f /opt/simplelogin/docker-compose.yaml stop job-runner
docker compose -f /opt/simplelogin/docker-compose.yaml stop postfix

Restore the database

First, wipe and re-create an empty database from template0. Then restore the dump.

docker compose -f /opt/simplelogin/docker-compose.yaml exec postgres \
  psql -U user postgres
> DROP DATABASE simplelogin;
> CREATE DATABASE simplelogin TEMPLATE template0;
> \q

docker compose -f /opt/simplelogin/docker-compose.yaml exec postgres \
  pg_restore -U user -F c --dbname simplelogin /var/lib/postgresql/data/simplelogin.backup
  • -F c is custom data compressed.

Clone this wiki locally