Updating
Updating by hand, with Docker, or automatically, and what to back up before you do.
Copy your data directory somewhere safe before every update, so you can roll back by restoring it alongside the old binary. Sharkord also snapshots the database by itself before applying schema changes, unless you turned that off, and it covers the database only. See Database Migrations.
Manual Update (Recommended)
- Stop the server.
- Download the latest release for your platform.
- Replace the old binary with the new one and start it again.
Your configuration and data are untouched; they live in the data directory, not next to the binary. On the first start, the new version applies any database migrations it ships, taking a snapshot first.
Which Version Is Running?
The settings show it, and every HTTP response carries it:
curl -sI https://your-server/healthz | grep -i x-sharkord-versionDocker
docker pull sharkord/sharkord:latest
docker rm -f sharkord
# start the container again with the same commandOr with Compose:
docker compose pull
docker compose up -dFrom the Admin Panel
If you have the MANAGE_UPDATES permission, the server settings show the current version, the latest release, and a button to update. The server downloads the new binary and restarts itself.
This is unavailable in Docker, where the image is the unit of update, and in development builds.
Automatic Updates
Set autoupdate in config.ini:
[server]
autoupdate=trueThe server then checks GitHub for a new release at startup and once an hour, and restarts itself when it installs one. It is off by default, and unavailable in Docker.
Self-updating does not work in every environment, and a failed update can leave the server down until you replace the binary by hand. Until this is more solid, prefer the manual update or a fresh Docker image.