Catalog / Business applications

Odoo

ERP and CRM business suite with accounting, inventory, sales and manufacturing apps

CIS Level 1 hardened Ubuntu 24.04 LTS image by Lynxroute · unique credentials at first boot · CVE-scanned · SBOM and CIS report inside

Availability and pricing
CloudVersionSoftware priceLast build
AWS Marketplace
EC2 AMI · all commercial regions
18.0$0.05/hr
Recommended instance: t3.large · 5-day free trial
2026-09-04Listing ↗
Azure Marketplace
VM image · plan payg-gen2 · Gen2
18.0$0.028/vCPU/hr
Recommended VM: Standard_D2s_v3
2026-06-29Listing ↗

Software price only; cloud infrastructure is billed separately by the provider. Prices in USD.

Image facts
Base OSUbuntu 24.04 LTS
HardeningCIS Level 1, Ubuntu 24.04 LTS (tailored)
LicenseLGPL-3.0
UpstreamOdoo S.A.
Machine-readableproduct.json · catalog.json
What is Odoo

Odoo Community Edition is an open-source, all-in-one ERP and CRM business suite. It runs as a Python application backed by a PostgreSQL database and is organised into integrated apps you install on demand: CRM, Sales, Invoicing, Inventory, Purchase, Accounting, Project, Manufacturing, Website and many more, all sharing one data model so a lead can flow through to a quotation, a delivery and an invoice without re-keying. Reports render to PDF via wkhtmltopdf. The web client and websocket bus bind to loopback and are fronted by nginx for TLS. The database and the file attachment store persist on the instance disk. LGPL-3.0 license, no vendor lock-in. Self-hosted on your own EC2 instance, your business data never leaves your AWS account.

What the Lynxroute image adds

Security hardening:

  • A master (database-management) password and an application admin password generated at first boot (written to /root/odoo-credentials.txt)
  • An initial database created at first boot - log in and start, no web installer step exposed to the internet
  • The database manager disabled (list_db off) so the database list and management screens are not reachable
  • Odoo bound to 127.0.0.1 (web and websocket); PostgreSQL bound to 127.0.0.1 only; host nginx terminates TLS on port 443
  • One-command HTTPS: certbot --nginx (Certbot and the nginx plugin are pre-installed)
  • The PostgreSQL role uses a unique password generated at first boot
  • UFW firewall pre-configured (ports 22 and 443 only)
  • fail2ban, auditd, AppArmor pre-configured
  • CVE scan - every image is scanned for vulnerabilities before release

OS hardening (CIS Level 1):

  • CIS Ubuntu 24.04 LTS Level 1 benchmark applied via ansible-lockdown
  • auditd, SSH hardening, Kernel hardening, IMDSv2 enforced

Compliance artifacts:

  • SBOM - CycloneDX 1.6 at /etc/lynxroute/sbom.json
  • CIS Conformance Report at /etc/lynxroute/cis-report.html
  • CIS Tailored Profile at /usr/share/doc/lynxroute/CIS_TAILORED_PROFILE.md
Deploy

Launch in one command

Credentials are generated at first boot and written to /root/odoo-credentials.txt.

# subscribe once on the AWS Marketplace listing, then:
aws ec2 run-instances \
  --image-id resolve:ssm:/aws/service/marketplace/prod-zrvhnzoihrysu/latest \
  --instance-type t3.large --key-name my-key --security-group-ids sg-xxxxxxxx
# accept the plan terms once, then:
az vm image terms accept --publisher lynxroute --offer odoo --plan payg-gen2
az vm create -g my-rg -n odoo --size Standard_D2s_v3 \
  --image lynxroute:odoo:payg-gen2:latest --admin-username azureuser --generate-ssh-keys
Release notes

Latest release

The most recent release with notes; the full release history is in product.json.

Odoo v-18.0

AWS · 2026-09-04Azure · 2026-06-29
  • Re-release of Odoo 18.0. The application version is unchanged; this build refreshes the underlying operating system image
  • Rebuilt on the latest CIS Level 1 hardened Ubuntu 24.04 LTS base, picking up every operating-system security update published since the previous build