Install Odoo on Ubuntu
Windows & macOS

Odoo installs five ways: Odoo Online, Odoo.sh, packaged installers, Docker, or source. This guide covers each on Ubuntu, Windows, and macOS, with Python and PostgreSQL requirements, version-wise steps, and fixes for common errors.

Multiple installation methods Supports every major Odoo release Linux · Windows · macOS Installation troubleshooting

Choose the Right Way to Install Odoo

Odoo can be deployed in several ways depending on your business goals, technical expertise, and hosting preferences. Whether you’re looking for the fastest setup, a flexible development environment, or a fully customized production deployment, choosing the right installation method makes future maintenance much easier.

Zero Setup

Odoo Online (SaaS)

Odoo Online is Odoo's fully hosted SaaS edition and requires no installation at all. Odoo manages the server, PostgreSQL database, updates, and backups for you. It suits businesses that want to run standard Odoo apps immediately without owning any server infrastructure.

Managed Platform

Odoo.sh

Odoo.sh is Odoo's managed PaaS, built for teams deploying custom modules. It ships with GitHub integration, staging and production branches, automated backups, and one-click deployment, so you run custom Odoo code without administering Ubuntu servers or PostgreSQL.

Quick Installation

Packaged Installers

Packaged installers are the fastest on-premise route: a .deb for Ubuntu and Debian, an .rpm for Fedora and RHEL, and an .exe for Windows. Each resolves its own dependencies and registers Odoo as a system service, so no source checkout is needed.

Fastest Development

Docker Install

The official Odoo Docker image gives developers a clean, repeatable environment. A docker compose file runs Odoo and PostgreSQL as linked containers in minutes, making it the practical choice for development, testing, demos, and short-lived environments.

Maximum Flexibility

Source Installation

A source installation clones Odoo from GitHub and runs it in a Python virtual environment, giving full control of the addons path and dependencies. It is the standard approach for custom development, running several Odoo versions on one host, and tuned production servers.

Expert Assistance

Cybrosys Managed Install

Cybrosys Technologies is an Odoo Official Partner and can run the whole installation for you. Our engineers handle server provisioning, PostgreSQL setup, dependency resolution, Nginx and SSL configuration, performance tuning, and production deployment, on-premise or on your cloud account.

System Requirements for Installing Odoo

Every Odoo installation needs Python, PostgreSQL, and a set of build dependencies before setup begins. Minimum versions shift with each release, so check your target version first. These components are required on Ubuntu, Debian, Windows, and macOS alike.

Python

Odoo runs on Python 3, and the minimum version rises with each release. Odoo 19 and 18 require Python 3.10 or later, while Odoo 16 and earlier run on Python 3.8 to 3.10. Install Odoo inside a virtual environment so the interpreter stays matched to your chosen release.

PostgreSQL

PostgreSQL is the only database Odoo supports. Odoo 19 requires PostgreSQL 13 or later, raised from 12 in earlier releases. Odoo must connect as a PostgreSQL role with database creation rights, so create that user before first launch to avoid authentication failures.

Git

Git is required only for source installations. It clones the odoo/odoo repository from GitHub and checks out a branch such as 19.0. Odoo Enterprise also needs the odoo/enterprise repository, which requires partner access.

Node.js & npm

Node.js and npm compile Odoo's web assets and power right-to-left language support via rtlcss. Odoo starts without them, but the backend interface and Arabic or Hebrew layouts may render incorrectly, so install both before go-live.

wkhtmltopdf

Odoo renders every PDF through wkhtmltopdf, including invoices and delivery slips. Use the patched Qt build named in Odoo's docs: the package shipped with Ubuntu is unpatched and drops report headers and footers.

Build Tools

Several Python dependencies compile from source during pip install and need system development headers. On Ubuntu and Debian, install build-essential, python3-dev, libpq-dev, libxml2-dev, libxslt1-dev, and libjpeg-dev before running pip.

Choose Your Odoo Version

Each Odoo release changes its supported operating systems, Python and PostgreSQL minimums, and installation steps. Odoo 19 is the current release and Odoo 18 remains the most widely deployed. Select your version below for a step-by-step guide matched to your operating system.

Latest

Odoo 19 Installation

Installing Odoo 19? This guide covers the latest installation process for Ubuntu, Windows Server, and macOS, including updated Python requirements, PostgreSQL compatibility, and recommended system configurations for a stable deployment.

Stable

Odoo 18 Installation

Odoo 18 remains one of the most widely adopted releases for new ERP projects. Explore step-by-step installation instructions, development environment setup, and the recommended software stack for reliable performance.

Stable

Odoo 17 Installation

If you’re deploying Odoo 17, you’ll find installation guides for Ubuntu and Windows along with the required dependencies, recommended Python version, and best practices for getting your server ready.

Maintained

Odoo 16 Installation

Odoo 16 continues to power many production environments. Choose from installation guides for Ubuntu, Windows, Docker, and Amazon EC2 to match your preferred deployment approach.

Maintained

Odoo 15 Installation

Still working with Odoo 15? These installation guides cover supported operating systems, required dependencies, and the recommended setup process for maintaining existing deployments.

Legacy

Odoo 14 Installation

Although Odoo 14 is an older release, many organizations continue to use it for legacy systems. Follow this guide to install and maintain existing deployments with confidence.

Legacy

Odoo 13 Installation

Looking for Odoo 13? These guides are mainly intended for businesses maintaining legacy environments or preparing for migration to a newer Odoo version.

Any Version

Need a Custom Setup?

Planning a multi-server deployment, high-availability environment, or multiple Odoo versions on the same infrastructure? Our experts can design, install, and optimize an Odoo environment that fits your business requirements.

Install Odoo Through Expert Video Tutorials

Step-by-step Odoo installation walkthroughs recorded by the Cybrosys engineering team, covering Ubuntu 24.04 LTS, the Windows installer, and PyCharm setup for Odoo 19.

Common Odoo Installation Problems and Fixes

Most Odoo installation failures trace to three causes: missing system development headers, a Python or PostgreSQL version mismatch, or a misconfigured odoo.conf. The errors below are the ones our engineers see most often, each with the command-level fix that resolves it.

ModuleNotFoundError on Startup

This error usually means one or more Python packages weren’t installed correctly or the virtual environment isn’t active.
Fix: Activate your virtual environment and reinstall all dependencies using requirements.txt before starting Odoo again.

Blank or Broken PDF Reports

PDF reports fail when the incorrect version of wkhtmltopdf is installed.
Fix: Install the recommended patched build to ensure invoices, quotations, and reports render correctly with proper headers and footers.

PostgreSQL Authentication Failed

Odoo can’t connect to PostgreSQL when authentication settings or user permissions are incorrect.
Fix: Verify your PostgreSQL credentials, review the pg_hba.conf configuration, and make sure the Odoo database user has the required access.

Port 8069 Already in Use

Another application or Odoo instance is already using the default server port.
Fix: Stop the conflicting process or configure Odoo to run on a different port before restarting the service.

Pillow / lxml Fail to Build

Missing system dev libraries during pip install.
Fix: Install libjpeg-dev, libxml2-dev and libxslt1-dev first, then retry the installation.

Unsupported Python Version

Each Odoo release supports a specific range of Python versions. Using an unsupported interpreter can cause installation failures or unexpected runtime errors.
Fix: Install the Python version recommended for your Odoo release and recreate the virtual environment if necessary.

Odoo Python Package Requirements

Odoo pins exact package versions per Python release in its requirements.txt matching the official Ubuntu 24.04 / Debian 12 python3-* packages. A quick reference for the packages developers hit most often during setup:

Package Version (Python < 3.12) Version (Python ≥ 3.12) Why it matters
psycopg2 2.9.5 / 2.9.9 2.9.9 – 2.9.10 PostgreSQL database driver, and the #1 source of install-time build failures without libpq-dev.
Pillow 9.4.0 10.2.0 / 11.1.0 Image processing for reports and attachments; needs libjpeg-dev to compile.
lxml 4.9.3 5.2.1 XML/HTML parsing used across views and reports; needs libxml2-dev / libxslt1-dev.
gevent / greenlet 22.10.2 / 2.0.2 24.2.1+ / 3.0.3+ Powers the async worker used for long-polling/live features; version must match Python exactly.
reportlab 3.6.12 4.1.0 PDF generation engine used alongside wkhtmltopdf for certain reports.
cryptography 3.4.8 42.0.8 Backing library for pyOpenSSL; mismatched versions break SSL/auth features.
Werkzeug 2.2.2 3.0.1 WSGI layer underlying the Odoo HTTP server.
python-ldap 3.4.0 3.4.4 Required only if LDAP authentication is enabled.
num2words 0.5.10 0.5.13 Used to spell out amounts in accounting/invoice reports.
xlsxwriter / xlrd 3.0.2 / 1.2.0 3.1.9 / 2.0.1 Excel import/export across Odoo’s reporting and data-import tools.

Always install with pip install -r requirements.txt inside a virtual environment rather than pinning packages manually, since Odoo’s file already resolves the correct version per Python release.

Install Odoo from Source on Your Preferred OS

Installing Odoo from source gives you complete control over your environment and is the preferred option for custom development and production deployments. While the overall process is similar across platforms, each operating system has its own dependencies and setup requirements.

Linux – Ubuntu / Debian
Source Installation

The complete step order for installing Odoo from source on Ubuntu or Debian:

  • 1 Update the OS and install required dev packages & Python dependencies
  • 2 Install PostgreSQL and create a dedicated database user for Odoo
  • 3 Clone the official Odoo repository and switch to your target version
  • 4 Create a virtual environment and install packages from requirements.txt
  • 5 Install the recommended wkhtmltopdf build for PDF reports
  • 6 Start the server and complete the initial database setup in-browser
  • 7 Verify all services are running before installing further modules
Windows 10 / 11
Source Installation

The complete step order for installing Odoo from source on Windows:

  • 1 Install a supported Python version and PostgreSQL on Windows
  • 2 Download Git and clone the official Odoo repository for your version
  • 3 Install the required Microsoft Visual C++ Build Tools
  • 4 Create a virtual environment and install required Python libraries
  • 5 Install wkhtmltopdf to enable invoice and report generation
  • 6 Launch the Odoo server and verify it starts without errors
  • 7 Open Odoo in your browser and complete the database wizard
macOS – Intel & Apple Silicon
Source Installation

The complete step order for installing Odoo from source on macOS:

  • 1 Install Homebrew, then use it to install Python, PostgreSQL & deps
  • 2 Clone the official Odoo repository and check out the version branch
  • 3 Create and activate a Python virtual environment, install packages
  • 4 Install the recommended wkhtmltopdf package for PDF support
  • 5 Configure PostgreSQL and create a database role for Odoo
  • 6 Start the Odoo server and verify it’s accessible in-browser
  • 7 Complete initial configuration and install required modules

Community vs Enterprise Install

The installation steps are nearly identical. The difference is in source access and activation. See the full Odoo Community vs Enterprise comparison for feature level differences.

Aspect Odoo Community Odoo Enterprise
Source Access Public GitHub repository, no login required Private repository; requires an Odoo partner or customer account
Installation Method Source, Docker, or .deb/.rpm/.exe Same methods, plus the managed Odoo.sh platform
Activation None required Needs a valid Enterprise subscription code on first login
Add-ons Path Single addons folder Community addons + separate enterprise folder in --addons-path
Cost Free, open-source Paid per-user subscription

Frequently Asked Questions

Answers to the questions we hear most often about installing and setting up Odoo.

What are the different ways to install Odoo? +
Odoo can be installed in five main ways: Odoo Online (fully hosted SaaS, no installation needed), Odoo.sh (Odoo's managed PaaS with Git-based deployment), packaged installers (.deb, .rpm or the Windows .exe for a quick single-server setup), the official Docker image, and a full source installation cloned from GitHub for maximum customization and control.
Which Python version do I need for my Odoo version? +
Odoo 17 and 18 are commonly run on Python 3.10–3.12, while the latest releases support newer Python versions including 3.12 and 3.13. The exact supported range depends on the OS you install on (Ubuntu 24.04/Debian 12 map to the newer Python range); always check the requirements.txt shipped with the branch you clone.
Can I install Odoo Community and Enterprise on the same server? +
Yes. Enterprise is installed as an additional add-ons repository layered on top of Community. Clone both the community and enterprise repositories, add the enterprise folder to your --addons-path, and activate it with a valid Odoo Enterprise subscription code.
Do I need Docker to install Odoo? +
No, Docker is optional. It's the fastest way to spin up a disposable Odoo instance for testing since PostgreSQL and dependencies are pre-configured in the image, but production deployments equally use packaged installers or full source installs depending on the level of customization required.
How much RAM and CPU do I need to run Odoo in production? +
A small production instance with a handful of users typically runs comfortably on 2 vCPUs and 4GB RAM. Larger, multi-module deployments with 20+ concurrent users generally need 4-8 vCPUs and 8-16GB RAM, scaled further with worker processes and a dedicated PostgreSQL server for heavier workloads.
Can Cybrosys install and configure Odoo on my server? +
Yes. As an official Odoo partner, Cybrosys handles end-to-end installation and server configuration (source or Docker setup, PostgreSQL tuning, SSL, worker configuration, module installation and go-live checks) on your own infrastructure or on Odoo.sh.
Is a source installation better than the packaged installer? +
A source installation gives full control over custom modules, git version control and multiple side-by-side Odoo versions, making it the preferred option for developers and businesses with custom add-ons. The packaged installer is quicker to set up and better suited to a simple single-server deployment without heavy customization.
How do I upgrade Odoo after installing an older version? +
Upgrading in place is not recommended. The safer path is a database backup, a fresh installation of the target version, and either Odoo's official upgrade service or a manual, module-by-module migration to move data and customizations across. Cybrosys offers this as a dedicated Odoo migration service.

Need Help Installing
or Configuring
Odoo?

Tell us your Odoo version, operating system, and hosting setup. Our Odoo Official Partner team replies with an installation plan within 24 business hours.

No obligation, free to discuss your requirements
Senior consultant, not a sales representative
Works with Community and Enterprise editions
Response guaranteed within 1 business day
NDA available on request
WhatsApp +91 8606827707
Email info@cybrosys.com

Book Free Installation Consultation

Book My Free Consultation

By submitting, you agree to our privacy policy. We never share your data.

WhatsApp