Deploy Odoo 16, 17, or 18 Community Edition on Ubuntu 22.04 or 24.04 using Docker — the world's most popular open-source ERP with 50+ integrated apps including CRM, accounting, inventory, HR, POS, manufacturing, and e-commerce.
Choose Your Version:
Grab the automated bash script from GitHub to follow along with the video.
wget https://raw.githubusercontent.com/mhmdali94/Docker/main/erp/odoo-18/odoo18-ubuntu.sh
chmod +x odoo18-ubuntu.sh
sudo bash odoo18-ubuntu.sh
wget https://raw.githubusercontent.com/mhmdali94/Docker/main/erp/odoo-18/odoo18-ubuntu.shchmod +x odoo18-ubuntu.shThe script installs Docker if needed, then deploys Odoo with PostgreSQL automatically. Minimum 4 GB RAM is recommended for stable operation.
sudo bash odoo18-ubuntu.shOpen your browser and navigate to:
http://<your-server-ip>:8069
On first access, Odoo presents a database creation screen. Enter your master password, choose a database name, set your language and country (select your region for correct accounting localization), then click "Create Database." Once created, log in with admin credentials and install the apps your business needs.
| Port | Purpose |
|---|---|
| 8069 | Odoo Web UI & JSON-RPC API |
| 8072 | Odoo Longpolling (live chat & real-time) |
| 5432 | PostgreSQL — internal only, not exposed |
Odoo is the world's most widely deployed open-source ERP, with over 12 million users and a modular architecture that lets businesses install only the apps they need. The Community Edition is fully free and covers the core business back-office: sales, CRM, inventory, purchasing, accounting, manufacturing, POS, website, e-commerce, project management, HR, payroll, and helpdesk. Each module integrates seamlessly with the others — a confirmed sales order automatically creates a delivery task, which updates inventory, which posts the corresponding accounting entry. Odoo's clean, modern interface is one of its strongest selling points compared to legacy ERPs. The Docker deployment makes the traditionally complex Odoo server setup approachable for self-hosters.
Odoo Community gives you a complete, professionally designed business suite with no software licensing cost. The UI is polished and consistent across all modules, reducing training time compared to stitched-together point solutions. The module marketplace (Odoo Apps Store) has thousands of community and official extensions for specialized needs — from ZATCA e-invoicing to advanced manufacturing scheduling. For MENA businesses, Odoo has strong Arabic localization, RTL support, and regional accounting modules. Unlike ERPNext which uses MariaDB, Odoo runs on PostgreSQL, giving it strong data integrity and JSON field support. The main tradeoff: some advanced features (accounting reports, maintenance module, helpdesk SLA) are locked behind the paid Odoo Enterprise tier.
Odoo needs port 8069 (main web UI and JSON-RPC API) and optionally port 8072 (longpolling for live chat and real-time notifications). In production, put Odoo behind a reverse proxy (Nginx Proxy Manager) and expose only port 443 (HTTPS). Block direct access to 8069 from the internet using ufw. PostgreSQL on port 5432 stays on the internal Docker network and must never be exposed. Configure ufw allow 443 and ufw allow 80 (for HTTP redirect), then ufw deny all other inbound traffic.
ERPNext is the strongest free alternative — it has no Community/Enterprise split so all features are included, but it uses MariaDB and has a steeper initial setup. Dolibarr is simpler and much lighter but lacks Odoo's manufacturing depth and polished UI. iDempiere is a mature Java-based ERP for larger enterprises. For businesses that need only CRM, EspoCRM or SuiteCRM are far lighter. The honest tradeoff with Odoo: if you need accounting reports, maintenance module, or helpdesk SLA, the Community Edition limitations will frustrate you — those features are Enterprise-only.
If you need the accounting reports module, the maintenance module, or helpdesk SLA features, Odoo Community will not satisfy you — those require Odoo Enterprise at $11–24 per user/month. For a business that only needs CRM or only needs accounting, Odoo is overkill. If your server has less than 4 GB RAM, do not attempt Odoo — it will be unstable. For highly regulated industries (healthcare, banking) that need strict audit trails and role separation at a granular level, a specialized ERP may be a better fit. Finally, if your team cannot invest in ERP implementation and training, Odoo's power will go unused.
PrismaTechWork provides end-to-end infrastructure services — from initial deployment and security hardening to ongoing monitoring, automated backups, and dedicated support. Whether you need a single-server setup or a multi-site network, our team ensures your infrastructure is built right, secured properly, and maintained reliably.
Odoo Community is free and open-source (LGPLv3). Odoo Enterprise is a paid layer on top that adds advanced accounting reports, helpdesk SLA, live chat, maintenance, field service, and many more modules. Enterprise is priced at about $11–24 per user/month (annual). Community is a fully functional ERP for most SMEs — just be aware of what is missing before committing.
Yes — Odoo has a full Arabic translation with RTL layout support. Install the Arabic language under Settings → Languages and set it as the user's preferred language. Odoo also has country-specific accounting localizations for Saudi Arabia (ZATCA e-invoicing), UAE, Egypt, and other MENA countries. Invoice print formats support Arabic, and the POS module works in Arabic.
Community Edition is production-ready for most SME use cases: sales, CRM, inventory, basic accounting, manufacturing, and POS all work fully without Enterprise. The main gaps are: advanced accounting reports (aged receivable/payable, budget), helpdesk SLA, live chat, and the Studio no-code app builder. Evaluate whether those specific features are on your must-have list before choosing.
Odoo Community has no user limit in the license — you can create unlimited users. Performance depends on server resources. A 4 vCPU / 8 GB RAM server comfortably handles 30–50 concurrent users with proper workers configuration. For 100+ concurrent users, scale up to 8 vCPU / 16 GB RAM and consider a PostgreSQL read replica.
Yes — Odoo has a full Python-based module system. Custom modules go in the addons directory and are installed through the Apps menu. Odoo also exposes a JSON-RPC API and an XML-RPC API for all objects, enabling integration with n8n, Zapier, or custom scripts. The Odoo Apps Store has thousands of community modules for specific industries and integrations.
Odoo major version upgrades (e.g., v16 → v17) require running the official database migration scripts, which convert the database schema and data. The process: back up your database and filestore, run the Odoo upgrade script on the backup in a staging environment to verify it succeeds, then apply in production. Never in-place upgrade without testing the migration first — data loss is possible if migration fails partway.
Odoo exclusively supports PostgreSQL — MySQL and MariaDB are not supported and will never be. PostgreSQL gives Odoo better data integrity, JSON field support, and advanced query capabilities. Our Docker setup includes a PostgreSQL container pre-configured for Odoo. Do not attempt to use MySQL; it is not a supported configuration.
Odoo works well on a VPS as long as you meet the RAM requirement — minimum 4 GB, ideally 8 GB. A $20–30/month cloud VPS with 4 vCPU and 8 GB RAM is sufficient for most small businesses (up to 20–30 users). Use Docker for clean isolation, put Nginx Proxy Manager in front for HTTPS, and configure automated daily backups. Odoo does not require bare-metal hardware.