Repository navigation
Running and updating
Zachary Le edited this page Oct 14, 2026
·
3 revisions
The image is built by GitHub Actions and published as ghcr.io/zle3/nyerk:latest; your server only needs compose.yaml.
-
Update: click Update in Dockge, or
docker compose pull && docker compose up -d. To update automatically, add a cron job on the server (crontab -e); it only restarts Nyerk when there's a new image:*/15 * * * * cd /opt/stacks/nyerk && docker compose pull -q && docker compose up -d -
Roll back or pin a version: set
NYERK_IMAGE=ghcr.io/zle3/nyerk:sha-abc1234(or aweekly-YYYYMMDDtag) in the env and deploy. -
Database upgrades: some updates change how the database is laid out (the latest, version 3, came with shared party finders). The first start after one keeps a copy from just before as
data/nyerk-before-vN.db. An older version can't read an upgraded database, so to roll back past an upgrade, stop the stack and copy that file overdata/nyerk.dbas well; changes made since are lost. Delete the copies once you're happy. -
Your data lives in the
data/folder next tocompose.yaml: the database, nightly backups (04:00 server time, last 14 kept,BACKUP_KEEP), logs (deleted after 14 days,LOG_KEEP_DAYS) and the web page's certificate. Back up by copying that folder. -
Restoring a backup: stop the stack, copy a file from
data/backups/overdata/nyerk.db, start it again. Keepdata/forgotten.json: members erased with Forget this member in the last 14 days are erased again from the restored copy on start. -
Data folder permissions: on start the container hands
data/toPUID:PGID(default 1000:1000) and stops running as root. If that can't work (an NFS/SMB share, SELinux, or ownership changes ignored), it logs anyerk-entrypoint:line saying why and runs as root instead of failing. To fix it, keepdata/on a local disk or runchown -R 1000:1000 dataon the host; on SELinux hosts (Fedora, RHEL, Rocky) change the volume to./data:/data:z. -
Forgot the password? Add
NYERK_RESET_PASSWORD=1and a newADMIN_PASSWORDto the env, deploy, then removeNYERK_RESET_PASSWORD. -
Private fork? A private repo makes the image private too: create a GitHub token (classic) with only
read:packagesand rundocker login ghcr.ioonce on the server. -
Build from source instead:
cp .env.example .env # fill in DISCORD_TOKEN, GUILD_ID, ADMIN_PASSWORD docker compose -f compose.build.yaml up -d --build
Setting up
Running it
Using it
Changing it