Updating
Dubby runs database migrations automatically on startup, so updates are straightforward — pull the new image and restart. Your data, settings, and watch history are preserved across updates.
For deployment-specific update commands, see the updating section in each installation guide:
Database migrations
Section titled “Database migrations”Dubby’s Docker entrypoint runs database migrations automatically before starting the server:
- Pending migrations are detected and applied
- The server starts only after all migrations succeed
- If a migration fails, the container exits with an error — check
docker logs dubby
On Kubernetes, the same migration logic runs in the migrate init container, ensuring the schema is updated before the main pod starts.
Release channels
Section titled “Release channels”For standalone (single-container) deployments:
| Channel | Tag | When to use |
|---|---|---|
| Dev | dubbytv/dubby:dev | Every push to main. May break at any time. |
| Beta | dubbytv/dubby:beta | Feature-complete releases. Recommended for early adopters. |
| Stable | dubbytv/dubby:latest | Production use. Promoted from beta after a 2-week soak. |
For split deployments (Kubernetes), separate images are published with the same tags:
| Image | Description |
|---|---|
dubbytv/server | API server only |
dubbytv/worker | Background worker only |
dubbytv/web | Nginx web client only |
Each release is also published with a pinned version tag (e.g., dubbytv/dubby:0.1.0-beta.6). Pinned tags are never mutated, so they always reference the exact same image.
Pinning a version
Section titled “Pinning a version”To stay on a specific version instead of following a release channel, use the pinned version tag:
Docker Compose:
image: dubbytv/dubby:0.1.0-beta.6Helm:
helm upgrade dubby oci://ghcr.io/dubbytv/dubby --version 0.1.0-beta.6 ...Unraid: Edit the container and set Repository to dubbytv/dubby:0.1.0-beta.6.
Rollback
Section titled “Rollback”If an update causes issues, switch to the previous version tag:
docker pull dubbytv/dubby:0.1.0-beta.5Or pull by image digest for an exact match:
docker pull dubbytv/dubby@sha256:<digest>Checking your version
Section titled “Checking your version”Query the server’s system info endpoint:
curl -s http://localhost:3000/api/system/info | jq .serverVersionOr check the image reference on the running container:
docker inspect -f '{{.Config.Image}}' dubbyOn Kubernetes:
helm list -n dubbykubectl get pods -n dubby -o jsonpath='{.items[*].spec.containers[*].image}'