Upgrading
When pulling new changes, always run database migrations before restarting the server:
npx prisma migrate deployIn Docker deployments, the application container runs prisma migrate deploy automatically on startup before launching the server.
Pinning Versions
- For default-branch tracking, use the
latestimage tag. - For stable production deployments, pin
REMIX_STUDIO_IMAGEto a release tag such asghcr.io/shinchven/remix-studio:1.25.0, or to:1.25to take patch releases automatically.
See Docker Deployment for image-tag details.
Compatibility Notes
- Normal upgrades do not automatically invalidate every current session. Individual security migrations or releases can change token/session behavior; read the release notes between your current and target versions.
- Reference URLs can use HTTP or HTTPS, but server-side provider and media fetches reject unsafe private/internal network targets.
- Database migrations are forward operations. Restore the pre-upgrade database and matching object-storage snapshot if a rollback requires an older schema.
Version Notes
1.25.0
Eight migrations apply on startup: Civitai album records, the saved tag-match mode of workflow steps, tags on jobs, the auto-tagging settings table, a new export-task column, and new indexes.
- The export migration copies the item list of pending and processing exports into the new
payloadcolumn, then strips it from every export task'sdata, so the first startup takes longer when there are many large exports. Exports in progress carry on after the upgrade. - The index migration builds composite indexes on
AlbumItem,ExportTask,TrashItem,Post,PostExecutionandDeliveryTaskwith a plainCREATE INDEX, which blocks writes to each table while its index builds. With a very large album table, upgrade at a quiet time. - Auto-tagging stays off for each user until they pick a model under Account → Preferences.
1.24.0
- Browser notifications need no setup: the server generates its VAPID key pair on first use and stores it in the database, with the private key encrypted by
PROVIDER_ENCRYPTION_KEY. SetVAPID_SUBJECTto a contact address you own. To pin the keys instead, see Configuration. - TV mode and WebDAV are available at once; DLNA stays off unless
DLNA_ENABLEDis set and the app runs on the host network. See TV, WebDAV & DLNA. - ComfyUI project passwords are stored with the project and left out of project bundles.
Keep PROVIDER_ENCRYPTION_KEY Stable
DANGER
Do not change PROVIDER_ENCRYPTION_KEY across upgrades unless you are also re-encrypting stored provider credentials. Existing provider API keys are encrypted with this value.
If you previously ran an older version with a longer key value, the app may have been using only the first 64 hex characters — keep that same effective 64-character value when upgrading, or saved credentials may fail to decrypt.
Recommended Upgrade Procedure (Docker)
- Back up the database first — see Backup & Restore.
- Back up the main/export buckets and confirm the encryption key is recoverable.
- Read every release note between the installed and target versions.
- Pull the new image (or update
REMIX_STUDIO_IMAGE). - Restart the stack; the container applies migrations on startup.
- Confirm health at
/healthzand/readyz. - Test sign-in, provider decryption, representative media, queue dispatch, and export download.
Changelog
For a user-facing tour of what changed in each release, see What's New.
The full technical record is documented by version in the project's CHANGELOG.md and on the GitHub Releases page.