Appearance
Day-to-day operations
All commands run on the server as root (or with sudo). The scripts of the installed version are in /opt/tadbir/current/compose/onprem/; the examples shorten that to $KIT:
bash
KIT=/opt/tadbir/current/compose/onpremcompose.sh is Docker Compose already set up for your installation: any docker compose command works through it.
Start, stop, status
bash
sudo $KIT/compose.sh ps # state of every container
sudo $KIT/compose.sh stop # stop Tadbir (data is kept)
sudo $KIT/compose.sh up -d --pull never # start, or apply a .env change
sudo $KIT/compose.sh restart tadbir-standalone # restart one containerTadbir starts again by itself when the server reboots.
Health
compose.sh ps should show tadbir-standalone, postgres and keycloak as healthy and the others as Up; keycloak-config-cli shows Exited (0), which is normal: it configures sign-in at each start, then stops.
From the server itself:
bash
curl -k --resolve tadbir.acme.lan:443:127.0.0.1 -o /dev/null -w '%{http_code}\n' https://tadbir.acme.lan/200 means the web interface answers through HTTPS.
Logs
bash
sudo $KIT/compose.sh logs --tail 200 tadbir-standalone # application
sudo $KIT/compose.sh logs -f keycloak # sign-in, liveContainers: tadbir-standalone (application), ui (web server, HTTPS), keycloak and keycloak-config-cli (sign-in), postgres (database), photon (address search), tiles (maps).
Information for support
bash
cd /tmp && sudo $KIT/doctor.shIt prints a summary (version, containers, web checks, license dates, disk space, last backup, certificate expiry) and writes tadbir-doctor-<date>.tar.gz with the summary, recent logs and your settings with passwords removed. Send that file to Oloom support.
Backups
A backup runs every day automatically (tadbir-backup.timer) while Tadbir keeps running. Each backup is a folder DATA_ROOT/backups/<date-time>/ with the database, uploaded files, license, certificate and settings. A backup is usable only if it contains a .complete file. Backups older than BACKUP_RETENTION_DAYS (30 by default) are deleted.
bash
systemctl status tadbir-backup.timer # next run
systemctl status tadbir-backup.service # result of the last run
sudo $KIT/backup.sh # back up nowCopy backups off the server (another machine, a NAS, tapes): a backup on the same disk does not protect you from losing that disk. Backups contain passwords and all your data: store them securely.
Restore a backup
Restoring replaces the current data with the backup's. Everything entered after that backup is lost.
bash
sudo $KIT/restore.sh /srv/tadbir/backups/20261012-020000It stops Tadbir, moves the current data to DATA_ROOT/pre-restore-<date-time>/ (nothing is deleted), restores the backup, starts Tadbir and checks it answers. Once you have checked the result, delete that pre-restore-… folder to free space.
A backup can be restored on the same version or a newer one, not on an older version.
Restore on a new server (after losing the old one):
- Install the same version, with the same
DATA_ROOTandTLS_DIR. - Copy the backup folder to the server, then run
restore.shwith it. The backup's settings, passwords, license and certificate replace the new ones.
Test your backups: restore one on a spare machine from time to time.
Replace the certificate
Put the new cert.pem (full chain) and key.pem in TLS_DIR (default /opt/tadbir/tls), then:
bash
sudo $KIT/compose.sh restart uidoctor.sh shows the current certificate's expiry date. A certificate generated by the installer is valid for 825 days; to generate a new one, delete both files and run the installer again from the bundle of your installed version.
Disk space
What grows: the database and uploaded files (DATA_ROOT/postgres, DATA_ROOT/files), and DATA_ROOT/backups. Folders to delete when you no longer need them:
DATA_ROOT/pre-restore-<date-time>/: data replaced by a restore,DATA_ROOT/upgrade-snapshot/: copy of the database before the last upgrade (needed only to go back withrollback.sh),/opt/tadbir/releases/<version>/of versions you will not return to (never the one/opt/tadbir/currentpoints to).
Once you will not go back to the previous version, its Docker images can be removed with docker image prune -a while Tadbir is running. Do not do this before: rollback.sh needs them.