Skip to content

Upgrades ​

  1. Back up /data first (see Backups). Upgrades change the database, and there is no automatic way back.

  2. Get the new version of the repo (for example git pull), and read the changelog.

  3. Rebuild and restart:

    sh
    docker compose -f docker/compose.yml up -d --build

    Without Docker: pnpm install, pnpm build, pnpm docs:build, then restart the server.

The server updates the database itself when it starts (its migrations run on every start, and only new ones change anything). Keep the same /data volume and the same master key. Presence resets on a restart: team members count as available for hand-offs again once their admin panel reconnects.

What visitors notice ​

  • Pages that load /widget.js get the new widget within five minutes (its cache time). Open chats reconnect and carry on.
  • Pinned widget versions keep working. Every released loader is kept, so widget@x.y.z.js and its SRI hash stay valid; move to a newer pinned version when you want it (see Pinned version).
  • A chat window that was already open during the upgrade reconnects to the new server. If the protocol changed, it stops with protocol_unsupported, and reloading the page fixes it.
  • The npm package loads widget.js from your server, so it follows the server without an update (unless you pinned version).

Going back ​

Restore the backup you took (the database may have been migrated forward), then run the old version.

Wireface Chat 0.1.0. These docs are served by your own server.