We’re on 1.6.1 installed from the DEB package and want to move to 1.7.0. Do I uninstall first? Do I need to run database migrations manually, and will I lose users or connections? We also have a Docker test box to upgrade.
No uninstall needed. Each installer keeps config.json, the database, the logs and the licence cache in a data directory apart from the program, so an upgrade replaces the program and leaves your data alone. Every installer and the Docker image are tested by installing over the previous release and must keep its users, settings and sign-in keys.
The server migrates its own schema on every start, so an upgrade is installing the new package over the old one (or replacing the container) and starting the service. If you’d rather migrate at a moment you choose, for example before a rolling restart, run node server.js --migrate-only with the server’s own environment. It migrates, seeds and exits without opening a port. Don’t use plain --migrate for this; that one doesn’t seed.
For Docker, replace the container with one on the new tag and keep the zonerails-data volume, since it holds config.json and the encryption key:
docker run -d --name zonerails-server -p 3000:3000 \
-v zonerails-data:/var/lib/zonerails \
-v zonerails-logs:/var/log/zonerails \
cr.getzonerails.com/zonerails-server:1.7.0
Read the changelog before upgrading. 1.7.0 has a long list of Active Directory DNS fixes.