Updating and health checks
Updating
Section titled “Updating”Every release publishes a versioned image to ghcr.io/sm-steel/nani-pix-bot. See
the Releases page for what
changed, or the What’s new page here.
How you roll updates out is up to you. Any of these work:
docker compose pull && docker compose up -d- a small script or your own CI/CD
- a tool such as Watchtower
Nani Pix updates her database by herself on every start, so there’s no migration step to remember.
Restarting during a round
Section titled “Restarting during a round”You can restart or update Nani Pix at any time, even mid-round. Everything the game is waiting on (stage timers, reminders, turn windows, an open vote) is kept in the database and picked up again on startup. Anything that fell due while she was down happens right after she starts.
Health checks and auto-restart
Section titled “Health checks and auto-restart”Nani Pix’s container has a health check that watches for successful contact with Telegram, so it’s marked unhealthy if she stops receiving updates even though the process is still running. Docker checks every 30 seconds and marks the container unhealthy after three checks in a row find no contact with Telegram for 90 seconds.
restart: unless-stopped in docker-compose.yml already recovers from most
failures. The bot service also carries autoheal labels for anyone running a
watcher such as docker-autoheal,
which restarts unhealthy containers. Without such a watcher, the labels do nothing.
