Topic outline
-
This course teaches you how to install, upgrade, and manage a SORMAS server in production. SORMAS (Surveillance, Outbreak Response Management and Analysis System) is an open-source system used by public-health authorities to manage disease surveillance and outbreak response. Getting the server right — a correctly installed application server, a tuned database, and a secure proxy in front — is what keeps the system fast, reliable, and safe for the teams who depend on it.
By the end you will be able to install a new SORMAS server from scratch, upgrade an existing one safely, and perform the routine administration tasks that keep it healthy.
Who this course is for
Anyone responsible for running a SORMAS server: public-health IT staff, system administrators, and technical implementers. The course is written for a mixed audience — the core steps are approachable if you are newer to Linux servers, and each module includes optional 🔎 Deep dive callouts for readers who want the extra detail.
Prerequisites
- A Linux server (this course targets Ubuntu 22.x) with
sudo/root access. - Basic comfort with a terminal: running commands, editing a text file (e.g. with
nanoorvim), moving between directories. - Network access so the server can download software packages and the SORMAS release.
You do not need prior experience with Payara, PostgreSQL tuning, or Apache — this course explains what you need as you go.
How long it takes
Plan for roughly 4–6 hours to work through all modules, plus time for the hands-on installation on your own server. A first real-world installation typically takes 1–2 hours once prerequisites are in place.
Learning objectives
After completing this course you will be able to:
- Explain how a SORMAS server is composed (application server, database, proxy) and why each part exists.
- Prepare a Linux server with the correct OS packages, Java, and PostgreSQL configuration.
- Install and deploy a new SORMAS server using the official setup scripts.
- Put a production-grade Apache reverse proxy and firewall in front of the server.
- Upgrade an existing SORMAS server to a new release safely.
- Perform routine administration: starting/stopping services, basic tuning, backups, and troubleshooting.
Conventions used in this course
Marker Meaning code blockA command to run in the server terminal, or a file's contents. 💡 Tip A helpful shortcut or good practice. ⚠️ Warning Something that can break your installation or lose data if ignored. 🔎 Deep dive Optional detail for readers who want to understand why. ✅ Checkpoint A quick check to confirm a step worked before moving on. ❓ Quiz A short knowledge check. Answers appear immediately below each quiz. 💡 Tip: Throughout this course, commands are shown for Ubuntu/Debian using
apt. If you use a different distribution, the package names and paths may differ slightly, but the SORMAS steps are the same. - A Linux server (this course targets Ubuntu 22.x) with
-
About this module
Before installing anything, it helps to understand what you are actually building. A SORMAS server is not a single program — it is a small stack of cooperating pieces. Knowing how they fit together makes every later step make sense, and it makes troubleshooting far easier: when something breaks, you will know which piece to look at.
Text and media areas: 2 H5P: 1 -
About this module
This is the core of the course: taking a blank Ubuntu server and turning it into a working SORMAS server reachable over HTTPS. Work through the sections in order — each one builds on the last. Do not skip the prerequisites; most failed installs trace back to a missing package or an unconfigured database.
-
About this module
SORMAS is actively developed: new releases bring features, fixes, and security patches. Keeping your server current is part of running it responsibly. The good news — if you understood Module 1, you already know most of this.
Upgrading reuses the same
server-update.shscript; you simply run it again with a newer release. -
About this module
Once SORMAS is running, your job shifts from building to keeping it healthy. This module covers the everyday administration tasks: starting and stopping the two services, basic performance tuning, backups and restore, and a troubleshooting playbook for when something goes wrong. You do not need all of this on day one — treat it as a reference you return to.
-
You now have the full lifecycle: you can build a SORMAS server (prerequisites → setup → deploy → proxy → firewall), upgrade it safely, and administer it day to day. The recurring themes worth carrying with you:
- Know the three layers — PostgreSQL, Payara, Apache — so you always know where to look.
server-setup.shonce;server-update.shfor install and every upgrade.- Back up the database, verify the backup, and store it off-server.
- When troubleshooting, read the logs and work from the proxy inward.