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.5.0.
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.
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.