Antelao
Antelao hosts multiple Odoo instances as Docker containers on a single Linux server, and gives you one place to create, configure, back up, secure and monitor them.
It is aimed at three kinds of reader, and this manual signposts which is which where it matters:
- Odoo enthusiasts running one or two instances for themselves, who want the boring parts (TLS, backups, upgrades, intrusion prevention) handled properly without becoming a full-time system administrator.
- Odoo developers who need instances they can create, break, clone and throw away, with Git-backed addons and a database they can restore from a customer's backup in a minute.
- Hosting companies running many instances for many customers, who need quotas, unattended scheduling, off-site backups, per-customer isolation and a machine interface to drive it all.
The three front-ends
Antelao is one product with three ways in. They share a single domain layer, so anything you can do in one you can do in the others.
| Front-end | What it is | When you use it |
|---|---|---|
odoocli | Command-line tool, installed from a Debian package | Host setup, scripting, unattended administration, remote administration of any number of servers |
odoo-api | Management API container on port 5210 | The machine interface. It owns the background-job queue and the maintenance scheduler, so it is also what makes anything happen |
odoo-web | Management Web UI container on port 5220 | Day-to-day administration in a browser |
The Web UI is strictly a client of the API, and so is odoocli when it runs remotely. There is no
operation the browser can perform that a script cannot.
What a server runs
odoocli server install deploys the managed stack:
| Container | Purpose |
|---|---|
odoo-postgres | The shared PostgreSQL server holding every instance database |
odoo-nginx | The public edge: TLS termination and one site per instance |
odoo-fail2ban | Bans abusive addresses based on the nginx logs |
odoo-portainer | Docker management UI |
odoo-pgadmin | PostgreSQL administration UI |
odoo-postfix | SMTP relay, started only when a mail profile is configured |
odoo-<id> | One container per Odoo instance |
Odoo versions
Antelao hosts Odoo 15.0, 16.0, 17.0, 18.0 and 19.0, in both the Community and Enterprise editions. Instances of different versions run side by side on one server, each in its own container against the shared PostgreSQL server.
Where behaviour differs by Odoo version, this manual says so at the point it matters rather than in a separate per-version manual. The version selector at the top right of this site selects the Antelao release, not the Odoo release.
Editions
Antelao itself is licensed. Two editions are free of charge, two are subscriptions, and an unlicensed server is a supported state rather than a broken one: it runs one instance with one database and keeps working indefinitely.
The rule of thumb is by hand versus unattended and local versus off-site. Taking a backup yourself is free; letting the scheduler take it every night is not. See Editions for what each one unlocks, and for the capabilities that quietly do less rather than refusing outright when a licence lapses.
Where to start
Install the server and create your first instance in Getting started.