The management console
The console is at https://<your-server>:5322/. Plain HTTP answers on the server's own loopback
only, for the command line and a proxy on the host, so 5322 is the only way in from anywhere
else. This page is a map: what each part of the navigation is for, and where in this manual it is
covered.
Everyday
| Page | What it is | Covered in |
|---|---|---|
| Dashboard | A wrapping board of cards you arrange yourself | - |
| Instances | The instance list, and every instance you open as a child entry beneath it | Creating an instance |
| Jobs | Every queued, running, completed and failed operation, with its captured log | Jobs |
| Pending changes | What still differs from the running configuration, and why | Configuration and changes |
| Logs | Live and historical logs from the containers | Logs |
| Resources > Usage | CPU, memory and disk for the server, its core services and every instance, now | Resources |
| Resources > Statistics | Host and per-container CPU, memory and I/O over time | Resources |
| Resources > Storage | Where the disk has gone, by instance, database and backup | Resources |
| Tuning fit | How far the host's memory and CPUs are promised, and each instance's own fit | Tuning |
The instances you opened last are pinned above every page of that list, separated by a dimmed line, and their place there is by time rather than by your own ordering - which is why one can appear at the top however you have sorted or arranged the rest.
Alerting
Administrator only: a rule names channels, and a channel holds a credential.
| Page | What it decides | Covered in |
|---|---|---|
| Rules | Which events, above which severity, for which instances, go to which channels | Alerting |
| Channels | Where messages go: mail, Slack, Discord, or your own signed webhook | Alerting |
| Delivery log | Every attempt, what answered, and when the next one is due | Alerting |
Security
| Page | What it decides | Covered in |
|---|---|---|
| Users | The console accounts, their roles, and which instances each one may see | Users and roles |
| Firewall | Who may reach the console, the API and the consoles published on port 443, on a Rules tab, with the management API's failure budgets on a Configuration tab | Firewall and exposure, Rate limits |
| API keys | API keys for other callers, and the console's own key | API keys |
| Audit | Every act on the server, newest first | The audit trail |
| GeoIP | The MaxMind account the location rules are matched with | Location rules and GeoIP |
| Threat protection | Fail2Ban: the thresholds, the recipients, the jails and the bans | Intrusion prevention |
Backup storage
Administrator only. Where the off-site backups go: the storage accounts at Azure, Hetzner, Backblaze B2 and S3-compatible stores, the container or bucket each instance is given there, and the keys that lock every instance's backups. An instance's own targets, schedule and restores are on its Backup and Restore tabs.
| Page | What it is | Covered in |
|---|---|---|
| Overview | What the managed containers hold and cost, the trend, and what wants attention | Backup storage |
| Accounts | The storage accounts, their checks, defaults and rate cards | Backup storage |
| Containers | Every container, the instance it is bound to, and Bind, Unbind, Finish and Delete | Backup storage |
| Encryption | The server's backup keys, and whether new instances start encrypted | Backup encryption |
The server itself
| Page | What it is | Covered in |
|---|---|---|
| Configuration | The policy half, on General, Network and E-mail tabs | Configuration and state |
| Master data | Export and import of the master database, and the bootstrap file, on two tabs | Configuration and state |
| PostgreSQL | Local and Remote clusters, plus a Query Insights tab. Local carries Databases, Scaling, Analytics and Upgrade | Managing databases |
| Core services | The agent, the API, the GeoIP and Fail2Ban services, and whether they agree on a build; and Portainer, which is installed only when you choose it | Troubleshooting, Portainer |
| Query Insights | The statements PostgreSQL executed slowly, as a chart and a list | Query Insights |
| Images | The per-instance images that exist, and which one each instance runs | Lifecycle |
| Updates | Newer images for the managed containers, and applying them | Updates |
| Support | The support bundle and the ticket that carries it | Troubleshooting |
| Maintenance | The scheduled jobs, per instance and server-wide | Maintenance |
Environments, license, release notes
| Page | What it is | Covered in |
|---|---|---|
| Environments | Other Antelao servers managed from this console, with Groups and Tags | Several servers |
| License | The edition this server runs at, and installing a license | Installing a license |
| Release notes | What changed in this build. Last in the menu, and open to every role | Updates |
Two tabs open a terminal in a container rather than a page: an instance's Console tab, and the
same on a core service. Both carry Full screen, Open in a new browser tab and Copy all
output, which puts everything the terminal holds on the clipboard, and an
instance's welcome text names the odoo-shell and psql-shell commands so the two you actually
want are not something to look up.
On a developer workstation a Developer section appears above Configuration, holding the profiles. It is shown only on a workstation.
Things worth knowing on day one
Nothing happens instantly. Every change you make is queued as a job. While it runs, the button that started it holds and shows a spinner, and so does the bell; when it is done, a green success notice appears under the bell (amber when the job finished with a warning), and a failure shows on the page and as a red notice under the bell, both until you dismiss them. Nothing is added above the page while a job runs, so the page does not move. That is not slowness, it is the product refusing to claim success before the work is done. See Jobs.
A save applies itself. Saving a server or instance configuration queues the apply behind it. You do not have to remember a second step. What still differs afterwards is on Pending changes, with its reason and the action that goes with it.
The bell is the notification centre. Completed and failed jobs surface there, and so do alerts; its unread count rises for failures and for the outcome of your own jobs, not for every job that succeeds on the server. It fills itself from the server on connect, so a console opened after an overnight outage shows what happened during it rather than nothing.
There is a search box on every page. It finds menu pages and instances by name, and opens from anywhere with Ctrl+K or /. On a server with many instances it is faster than the menu, and it is the quickest way to a page whose section you have forgotten.
Your preferences follow you. Whether the sidebar shows only icons, the appearance, and the rest of what you set are kept against your account rather than in the browser, so they are the same on another machine and after a container is recreated.
My Account (the person icon in the top bar) has four tabs, the first three the same as on the GeoIP and Fail2Ban consoles. Profile sets the display name the top bar shows and your notification address, and shows your role, when your password was set and your last sign-in. Security holds your password, authenticator app, passkeys and sessions - see MFA and passkeys. Git is the developer's own credentials. Interface gathers your preferences in five cards:
| Card | What it sets |
|---|---|
| Appearance | The theme, and whether every list draws compact rows |
| Regional settings | The time zone, the date format (2026-07-30, 30-07-2026, 30/07/2026 or 30.07.2026), a 24- or 12-hour clock, the first day of the week in the date picker, the number format (1,234.56, 1.234,56, 1 234,56 or 1'234.56) and the size units (GiB in powers of 1024, or GB in powers of 1000). Each Automatic choice follows your browser's language |
| Messages | How many seconds a confirmation stays on screen; failures stay until you dismiss them |
| Navigation | The start page - the dashboard, where you left off or another page - how many instances the menu lists, and the instances you opened last |
| Lists | The rows per page a list opens with (25 unless you change it), how the Instances list is sorted, and two resets: one puts every list's settings back, the other deletes every saved view |
Lists have a copy button. Tables can be copied as tab-separated values, which pastes straight into a spreadsheet, and most carry a column picker and an export. The column picker also sets Compact rows for that list alone, and Use for every list makes its choice the default. A list filter reads a date in the format you chose, and always in the 2026-07-30 form as well, and a number or a size the way the list prints it for you. Working with lists covers sorting, filtering, columns, saved views and the keyboard.
What you can see depends on your role. Operators and Viewers are scoped to particular instances, and that scoping is enforced by the API rather than by hiding things in the browser. See Users and roles.
A padlock warning on first visit is expected. The console serves HTTPS with a self-signed certificate so that passkeys work at all. Accept it once, and reach the console by name rather than by address.
The license agreement is asked once per person. Every user is shown it the first time they sign
in, and again whenever a release carries a new version. Read it at any time with
ohm license agreement show on the host.
Prices
Prices and estimates - a backup storage account's or container's estimate on the Backup storage pages and an instance's Managed storage card - are shown in the currency the provider bills in, as its rate card gives it (for example "USD 6.00 / TB / month" for a provider that bills in US dollars). Nothing is converted.
When the console itself is down
The agent has a page of its own on 5202 over HTTPS, signed in with the operator key
(ohm server agentkey show). It shows the agent's own tasks - the server install, the container
recreation, the upgrade - because those outlive the API they recreate. It is the recovery door, and
the reason the agent is a separate thing from the API at all.
Who may open it depends on the install. Installed without a management address, every address
reaches the sign-in page and the operator key protects it. Installed with management addresses,
only those and the server itself are admitted, and any other browser sees only "403 Forbidden".
ohm install prints which applies, and
ANTELAO_BOOT_ALLOW explains how to change it.
Its Core services, Updates, Logs and Jobs pages are the same pages as here, running the check and the tail on the host itself, and the management certificate is managed there rather than in this console. Core services there also shows what the host has waiting from apt. Its Configuration page renames the server, which this console cannot do because its own API is offline for the whole rename; see Renaming the server.