Updating
Keep llama-dash, llama-swap, and llama.cpp up to date.
New llama-dash builds are published from the main branch. The System page shows when your running commit is behind main. Database migrations run automatically when llama-dash starts, so updating means fetching the new version and restarting.
Your data is kept across updates:
.envandconfig/config.yamlare ignored by Git, sogit pulldoes not overwrite them.- The database lives in the
llama-dash-dataDocker volume, or atDATABASE_PATH(defaultdata/dash.db) in a manual setup.
Migrations are not reversed when you roll back. Before a large update, stop llama-dash and back up its data directory so you can restore it.
Docker Compose
Run these commands from your llama-dash checkout. Use the Compose file you started with.
git pull
docker compose -f docker-compose.amd.yaml pull
docker compose -f docker-compose.amd.yaml up -dgit pull
docker compose -f docker-compose.nvidia.yaml pull
docker compose -f docker-compose.nvidia.yaml up -dgit pullupdates the Compose files and example config. It can fail if you edited a tracked file such as the Compose file; move local changes into.envwhere possible, or commit them on a local branch.pullfetches the latest llama-dash image and the latest llama-swap image. llama-swap rebuilds itsunified-*images nightly from the latest upstream sources, so this also updatesllama-server.up -drecreates only the containers whose image or configuration changed.
Remove old images afterwards with docker image prune.
Pinning versions
To stay on a known llama-dash build, set LLAMA_DASH_IMAGE_TAG in .env to a published image tag, such as a sha- commit tag. Compose reads this value when it resolves the image. pull and up -d then keep that build until you change the tag.
The llama-swap image tag is set in the Compose file. To pin llama-swap and llama.cpp, replace the floating tag with a fixed one from llama-swap's image list: a release tag such as unified-cuda13-268, or a nightly build such as unified-vulkan-2026-10-31.
Backing up the database
The database uses SQLite WAL mode, so copy the whole /data directory while llama-dash is stopped:
docker compose -f docker-compose.amd.yaml stop llama-dash
docker compose -f docker-compose.amd.yaml cp llama-dash:/data ./llama-dash-backup
docker compose -f docker-compose.amd.yaml start llama-dashManual setup
From your checkout, for example /opt/llama-dash:
git pull
pnpm install --frozen-lockfile
pnpm build
sudo systemctl restart llama-dashRun these as the account that owns the checkout. Check that the service started with sudo systemctl status llama-dash. To stay on a specific build, check out that commit instead of pulling main.
To back up the database, stop the service and copy the directory that holds data/dash.db (or your DATABASE_PATH), including any -wal and -shm files, before you restart it.
llama-swap and llama.cpp
In a manual setup, llama-swap and llama.cpp update separately from llama-dash:
- llama-swap: run
brew upgrade llama-swap, or replace the binary with a newer release, then restart llama-swap. - llama.cpp: update
llama-serverthe same way you installed it, through your package manager, a newer release binary, or a rebuild from source. llama-swap uses the new binary the next time it starts a model; unload running models from the Models page to pick it up immediately.
llama-dash talks to llama-swap over its HTTP API, so you can update each component independently.
Last updated on