How to Update Kaneo to the Latest Version
Pull the latest ghcr.io/usekaneo/kaneo:latest Docker image and restart your containers, or use the drim CLI tool to automate the entire process.
Updating Kaneo ensures you receive the latest security patches, features, and automatic database migrations. Since Kaneo is distributed as Docker images tagged with latest according to the usekaneo/kaneo source code, the update process requires pulling the newest image and recreating your running containers. The repository provides distinct workflows for production Docker Compose deployments, automated CLI updates, and local development environments.
Docker Compose Update Method
For standard production deployments, the README.md at the repository root defines the service structure in compose.yml. Updating requires pulling the newest image from the GitHub Container Registry and forcing container recreation to run the fresh code.
Run the following commands from the directory containing your compose.yml:
# Pull the newest Kaneo image
docker pull ghcr.io/usekaneo/kaneo:latest
# Restart services with the updated image
docker compose up -d --force-recreate
The --force-recreate flag ensures containers are rebuilt using the freshly pulled ghcr.io/usekaneo/kaneo:latest image rather than reusing the existing container layer.
Automated Update with the Drim CLI
The optional drim CLI tool automates the download, installation, and restart sequence. As documented in README.md, drim handles the entire update lifecycle with a single command after initial installation.
Install or update drim, then run the setup command:
# Install drim (run once)
curl -fsSL https://assets.kaneo.app/install.sh | sh
# Execute the automated update
drim setup
The drim setup command pulls the latest image, applies any configuration changes, and restarts services without manual intervention.
Development Environment Updates
If you run Kaneo locally from source instead of using Docker images, update by pulling the latest code from the main branch and rebuilding the monorepo. The build process is defined in the repository's package configuration and Dockerfile.kaneo.
Execute these steps in your local repository:
# Sync with the latest source
git checkout main && git pull
# Install new dependencies
pnpm install
# Rebuild the application
pnpm run build
# Restart development servers
pnpm dev
This method compiles the TypeScript source and restarts the development servers defined in the monorepo structure.
Kubernetes and Helm Updates
For Kubernetes deployments, the charts/kaneo/README.md file provides specific upgrade instructions. Update your Kaneo instance by pulling the latest Helm chart version and upgrading your release:
# Update Helm repository and upgrade the release
helm repo update
helm upgrade kaneo ./charts/kaneo
This process updates the container image reference in your Kubernetes deployment to the latest ghcr.io/usekaneo/kaneo:latest tag.
What Happens During a Kaneo Update
Understanding the underlying mechanics ensures smooth updates. The .github/workflows/ci.yml file defines the CI pipeline that automatically publishes the latest image tag after every successful build, guaranteeing the tag always points to the most recent stable release.
Automatic database migrations run on startup whenever the container detects schema changes. Your configuration persists across updates because environment variables—documented in ENVIRONMENT_SETUP.md—are injected at runtime and database data resides in persisted volumes, not in the ephemeral container layer.
Summary
- Docker Compose: Run
docker pull ghcr.io/usekaneo/kaneo:latestfollowed bydocker compose up -d --force-recreateto fetch and deploy the latest image. - Drim CLI: Execute
drim setupafter installing the CLI via the official install script for one-click updates. - Local development: Pull the latest source with
git pull, then runpnpm install,pnpm run build, andpnpm dev. - Kubernetes: Upgrade your Helm release using the chart in
charts/kaneo/to pull the latest image. - Database migrations apply automatically on startup; ensure environment variables from
ENVIRONMENT_SETUP.mdremain configured.
Frequently Asked Questions
Do I need to back up my database before updating Kaneo?
While Kaneo automatically applies database migrations on startup, creating a backup of your persisted volumes is a recommended precaution. The update process recreates containers but retains volume data; however, backing up ensures you can restore state if rollback is necessary.
Will updating Kaneo reset my configuration?
No. Configuration persists through environment variables and mounted volumes as specified in ENVIRONMENT_SETUP.md. When you run docker compose up -d --force-recreate, Docker replaces only the container image while preserving your volume mounts and environment settings.
How do I update Kaneo if I installed it via Helm on Kubernetes?
Update your Helm deployment by running helm repo update and helm upgrade with the chart located in charts/kaneo/. This pulls the latest chart version and updates the container image reference to ghcr.io/usekaneo/kaneo:latest within your Kubernetes cluster.
Can I roll back to a previous version if the latest update causes issues?
Yes. You can pin a specific version tag instead of latest in your compose.yml or Helm values, then recreate the containers. The GitHub Container Registry retains historical images built by the CI pipeline defined in .github/workflows/ci.yml, allowing you to reference specific previous builds.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →