A self-hosted Tymeslot instance stores all of its persistent state in two places: a PostgreSQL database and an uploads directory. Both must be included in any backup strategy to ensure you can fully recover the application — losing either one means losing data. This guide covers how to back up and restore each piece using Docker volumes,Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Tymeslot/tymeslot/llms.txt
Use this file to discover all available pages before exploring further.
pg_dump, and the options available on Cloudron.
Named volumes (e.g.
tymeslot_pg) are strongly recommended over host-path bind mounts. Named volumes live inside Docker’s own storage and avoid ownership and permission issues on Docker Desktop, rootless Docker, and SELinux-enforcing hosts.What needs backing up
| Volume | Default name | Contains |
|---|---|---|
| PostgreSQL data | tymeslot_pg | All application data: users, bookings, meeting types, integrations, settings |
| Uploads and app data | tymeslot_data | Uploaded files, avatars, and other persistent application data |
Backing up Docker volumes
The simplest way to back up both volumes is to use a temporary Alpine container to create compressed archives on your host machine..tar.gz archives in your current directory. Store them in a safe, off-server location — object storage, a backup service, or an encrypted remote drive.
Backing up with pg_dump
If you prefer a SQL dump rather than a volume-level snapshot, you can usepg_dump from inside the running container. This produces a portable, human-readable SQL file that can be restored into any compatible PostgreSQL instance.
tymeslot_backup.sql file contains all schema and data. Combine this with a separate backup of the tymeslot_data volume (for uploaded files) for a complete backup set.
Restoring from a volume backup
docker run command (or docker compose up -d) to start the container. Tymeslot will boot against the restored data automatically — no manual migration step is needed.
Restoring from a SQL dump
To restore from apg_dump SQL file, start the container first (so PostgreSQL is running inside it), then pipe the dump in:
tymeslot_data volume separately, restore it using the volume method above to bring back uploaded files.
Cloudron
On Cloudron, backups are handled automatically by the platform. Cloudron snapshots both the PostgreSQL database and the/app/data directory (which includes uploads) according to your configured backup schedule. You can trigger a manual backup and restore from any snapshot directly in the Cloudron dashboard — no shell commands required.
See the Cloudron documentation for details on configuring backup frequency and storage destinations.
Scheduling automated backups with cron
For Docker deployments, add a cron job on the host to run the volume backup commands on a regular schedule. The following example backs up both volumes daily at 2 AM and keeps archives in/srv/backups/tymeslot: