Files
sencho/docs/operations/upgrade.mdx
T
Anso cd9247db1e docs: retire the public-beta label and document v0.92.0 capabilities (#1398)
Sencho exits public beta after a clean v0.92.0 QA pass. Replace the global
"public beta on the path to v1.0" callout with scoped maturity language across
the README, KNOWN_LIMITATIONS, quickstart, troubleshooting, upgrade, and the
security-architecture reference. The copy stays honestly pre-1.0 and avoids a
blanket "stable" claim.

Reframe the Scale limitations to credit QA, audit, and end-to-end validation
while keeping the honest caveat that large-scale performance is not yet
benchmarked.

Fold the new v0.92.0 capabilities into the README sections: Compose Doctor
preflight checks, health-gated updates with stalled-update recovery, file
move/rename in the explorer, ordered multi-file Compose for Git sources, the
Security overview, on-demand node-wide scans, the Compose network inspector
with an exposure-intent guard, scan policy packs, documentation-drift flags,
and configurable image-update cadence with registry/source links.
2026-06-20 01:40:45 -04:00

91 lines
3.4 KiB
Plaintext

---
title: Upgrading Sencho
description: How to update Sencho, what happens during upgrades, and the version policy.
---
<Note>
Sencho is used in production for day-to-day Docker Compose and fleet management. As a pre-1.0 project it still evolves quickly, so review the [known limitations](https://github.com/studio-saelix/sencho/blob/main/KNOWN_LIMITATIONS.md) and validate against your own setup before deploying it on critical infrastructure.
</Note>
## Upgrade steps
Upgrading Sencho is a two-command process. Pull the latest image and recreate the container:
```bash
docker compose pull
docker compose up -d
```
Or if you're running with `docker run`:
```bash
docker pull saelix/sencho:latest
docker stop sencho && docker rm sencho
# Re-run your original docker run command
```
Sencho will apply any necessary database migrations automatically on startup. No manual steps are required.
<Note>
Remote nodes can be updated directly from the Fleet View without dropping to a shell. See [Remote Updates](/features/remote-updates) for details.
</Note>
---
## Automatic migrations
Sencho handles all schema changes internally. When the application starts, it checks whether the database needs updating and applies any pending migrations automatically. This covers:
- **New tables and columns** for features introduced in newer versions
- **Legacy config migration** from very early versions that used a JSON config file
- **Admin account migration** from single-admin storage to the multi-user system
- **Encryption of sensitive values** (node API tokens, registry credentials) that were previously stored in plaintext
- **SSO and RBAC setup** for single sign-on provider config and role-based access
- **Legacy cleanup** of obsolete fields from pre-0.7 versions (SSH/TLS columns)
You never need to run SQL commands, migration scripts, or any manual database operations.
---
## Backup before upgrading
Always back up your data directory before upgrading. If something goes wrong, restoring from backup is the only recovery path. Sencho does not support downgrading or rolling back database migrations.
```bash
# Copy both the database and the encryption key
cp /path/to/sencho-data/sencho.db /path/to/backup/sencho-pre-upgrade.db
cp /path/to/sencho-data/encryption.key /path/to/backup/encryption-pre-upgrade.key
```
See the [Backup & Restore guide](/operations/backup) for full backup procedures.
---
## Pinning a specific version
If you prefer to control exactly which version you run, pin the image tag in your `docker-compose.yml`:
```yaml
image: saelix/sencho:0.38.0
```
Check [GitHub Releases](https://github.com/studio-saelix/sencho/releases) for available versions and changelogs.
---
## Version policy
Sencho follows [Semantic Versioning](https://semver.org/) (`MAJOR.MINOR.PATCH`):
| Change type | Version bump | Example |
|-------------|-------------|---------|
| Bug fixes, performance improvements | Patch | 0.38.0 → 0.38.1 |
| New features | Minor | 0.38.x → 0.39.0 |
| Breaking changes | Major | 0.x.y → 1.0.0 |
<Note>
While the version is below 1.0, minor releases (0.x.0) may occasionally include breaking changes. These are always documented in the release notes. Once Sencho reaches 1.0, breaking changes will only occur in major releases.
</Note>
Breaking changes are marked with `BREAKING CHANGE` in the [release notes](https://github.com/studio-saelix/sencho/releases). Subscribe to the repository's releases to be notified of new versions.