Clean up orphan images
This commit is contained in:
1 parent
8763a8e74a
commit
c3bb015d2f
11 files changed
+496
-2
No files matched your search
@@ -92,6 +92,27 @@ Image URL inputs offer an **Upload image** button when all of these settings are
|
||||
of NSFW images. Set it to `false` to skip NSFW moderation and model initialization. Empty or
|
||||
unrecognized values keep checks enabled.
|
||||
|
||||
The Debian package includes `reminder-rs-clean-images.timer`, an hourly cleanup job. Enable it
|
||||
after configuring S3 and starting the bot (which applies database migrations):
|
||||
|
||||
```sh
|
||||
sudo systemctl enable --now reminder-rs-clean-images.timer
|
||||
```
|
||||
|
||||
Each run records the first observed orphan time in `image_uploads.orphaned_at` (UTC). An upload
|
||||
is orphaned when neither a reminder (including archived reminders) nor a template uses its URL
|
||||
as an avatar, image, thumbnail, author icon or footer icon. Referenced uploads have this timestamp
|
||||
cleared. `IMAGE_UPLOAD_ORPHAN_RETENTION_SECONDS` controls the additional retention time after
|
||||
detection; it defaults to `604800` (seven days) and must be a positive integer. Unsaved uploads
|
||||
are also covered. Cleanup rechecks references before deleting and removes the tracking row only
|
||||
after S3 confirms deletion; failed deletions are retried on later runs. Each run attempts up to
|
||||
1,000 expired uploads from the configured public URL's `uploads/` prefix.
|
||||
|
||||
For other deployments, schedule `/path/to/reminder-rs clean-images` hourly with cron, using the
|
||||
same working directory and configuration as the bot. The command requires no Discord token
|
||||
and skips NSFW model initialization. With no S3 settings it exits successfully without work;
|
||||
partial S3 settings or invalid retention values fail the job.
|
||||
|
||||
## Running with Docker
|
||||
|
||||
### RustFS for local development
|
||||
|
||||
Reference in new issue
Block a user