Odoo can be installed in several ways, or used without a local installation, depending on your specific requirements and intended use case. This document provides a detailed overview of the various installation options available for Odoo 16.0.

Editions

Odoo is available in two distinct Editions: the Community version and the Enterprise version. The Enterprise version offers advanced features and is typically used on Odoo Online, with access to its source code restricted to Enterprise customers and partners. In contrast, the Community version is open-source and freely accessible to everyone.

If you are currently using the Community version and wish to upgrade to the Enterprise edition, please consult the guide on Switch from Community to Enterprise. Note that this guide does not apply to installations performed via the Source install method.

Online

For those who prefer not to manage a local installation, Odoo offers convenient online options suitable for quick trials, testing, and even long-term production use.

Demo Instances

To quickly experience Odoo, demo instances are readily available. These are shared, temporary instances that typically remain active for a few hours, providing a perfect environment to explore the system and experiment with its features without any commitment. Accessing these demo instances requires no local installation; only a web browser is needed.

Odoo Online

Odoo Online provides a hassle-free way to start using Odoo. These are fully managed, private instances, with all migrations expertly handled by Odoo S.A., and they begin with a free tier. This service is ideal for discovering and testing Odoo, as well as for implementing non-code customizations (those that do not involve custom modules or the Odoo Apps Store) without the complexities of a local setup. Odoo Online is robust enough for both rigorous testing and stable, long-term production use. Similar to demo instances, Odoo Online environments require no local installation, functioning entirely through a standard web browser.

Packaged Installers

Odoo offers convenient packaged installers for various operating systems, including Windows, deb-based distributions (such as Debian and Ubuntu), and RPM-based distributions (like Fedora, CentOS, and RHEL). These installers are available for both the Community and Enterprise versions of Odoo.

These packages are designed to automate the setup of all necessary dependencies, especially for the Community version, simplifying the initial deployment. However, it is worth noting that keeping these installations consistently up-to-date might require periodic manual intervention. Official Community packages, complete with all relevant dependency requirements, can be obtained from our nightly server. Both Community and Enterprise packages are also available for download from our download page, though Enterprise packages require logging in as a paying customer or partner.

Windows Installation

  1. Download the appropriate installer: either from our nightly server (Community edition only) or the Windows installer from the download page (available for any Odoo edition).
  2. Execute the downloaded file.

    Warning

    On Windows 8 and later operating systems, you might encounter a security warning titled “Windows protected your PC.” To proceed with the installation, click on More Info and then select Run anyway.

  3. Accept the User Account Control (UAC) prompt to allow the installer to make changes to your system.
  4. Follow the on-screen instructions through the various installation steps provided by the wizard.

Upon successful completion of the installation process, Odoo will automatically launch and be ready for use.

Linux Installation

Prepare System: Odoo relies on a PostgreSQL server for its database operations. The default configuration for the Odoo 'deb' package anticipates the PostgreSQL server being hosted on the same machine as your Odoo instance. To install the PostgreSQL server, execute the following command in your terminal:

$ sudo apt install postgresql -y

Warning

The wkhtmltopdf utility, essential for generating PDF documents with headers and footers, is not installed via pip. It must be manually installed, specifically version 0.12.5, to ensure full functionality. Refer to our wiki for detailed information on different versions and installation guidelines.

Using the Odoo Repository: Odoo S.A. provides a dedicated repository that simplifies installation on Debian and Ubuntu distributions. To install the _Odoo Community Edition_ using this repository, execute the following commands in your terminal:

$ wget -q -O - https://nightly.odoo.com/odoo.key | sudo gpg --dearmor -o /usr/share/keyrings/odoo-archive-keyring.gpg
$ echo 'deb [signed-by=/usr/share/keyrings/odoo-archive-keyring.gpg] https://nightly.odoo.com/16.0/nightly/deb/ ./' | sudo tee /etc/apt/sources.list.d/odoo.list
$ sudo apt-get update && sudo apt-get install odoo

Once installed, you can use the standard sudo apt-get upgrade command to keep your Odoo installation updated with the latest releases from the repository.

Note

Currently, there is no nightly repository available for the Enterprise Edition. Enterprise users should refer to other installation methods or official Odoo channels for updates.

Installing via Distribution Package: As an alternative to using the repository, both the _Community_ and _Enterprise_ editions’ 'deb' packages can be downloaded directly from the official download page.

After downloading the package, execute the following commands as the **root** user to install Odoo:

# dpkg -i <path\_to\_installation\_package> # this command might initially fail due to missing dependencies
# apt-get install -f # this command should resolve and install any missing dependencies
# dpkg -i <path\_to\_installation\_package> # re-run the dpkg command to complete the installation

This installation method will set up Odoo as a system service, create the necessary PostgreSQL user accounts, and automatically start the Odoo server, integrating it seamlessly into your Linux environment.

Warning

  • The python3-xlwt Debian package is not available in Debian Buster or Ubuntu 18.04. This Python module is required for exporting data into XLS format. If this functionality is crucial for your operations, you may need to install it manually.
  • Similarly, the num2words Python package is absent in Debian Buster and Ubuntu 18.04. Without this package, textual representations of amounts will not be rendered by Odoo, which could lead to issues, particularly with modules like l10n_mx_edi. If this feature is essential, you can install it manually using:
    $ sudo pip3 install num2words

Source Installation

The "source installation" method, often considered a direct execution rather than a traditional installation, involves running Odoo directly from its source code. This approach offers unparalleled flexibility and control over the Odoo environment.

It is particularly favored by module developers due to the easy accessibility of the Odoo source code, simplifying development and debugging processes compared to packaged installations. Furthermore, running from source provides more explicit and granular control over starting and stopping Odoo services. It also allows for dynamic overriding of settings using command-line parameters, eliminating the need to modify static configuration files. Ultimately, this method grants greater command over the system's setup and significantly eases the management and concurrent execution of multiple Odoo versions on a single machine.

Fetching the Sources

There are two primary methods to obtain the Odoo source code: either as a zip archive or by cloning through a Git repository.

Archive Download:

You can download zip archives for both Community and Enterprise editions from various sources:

Git Cloning:

This method assumes you have Git installed on your machine and possess a basic understanding of Git commands. When cloning a Git repository, you typically choose between using HTTPS or SSH protocols. For most users, especially if you are new to Git, HTTPS is generally the simpler and recommended option. However, if you are following the Getting started developer tutorial or intend to contribute to the Odoo source code, SSH is often preferred for its security and convenience with authentication.

C:\> git clone https://github.com/odoo/odoo.git
C:\> git clone https://github.com/odoo/enterprise.git

Note

It is important to understand that the Enterprise Git repository does not contain the complete Odoo source code. Instead, it is a collection of supplementary add-ons. The foundational server code for Odoo resides within the Community version. To run the Enterprise version, you must operate the server from your Community version installation, explicitly setting the addons-path option to include the directory containing the Enterprise version’s add-ons. Therefore, a functional Odoo Enterprise installation requires cloning both the Community and Enterprise repositories. Please refer to the Editions section for information on how to gain access to the Enterprise repository.

Prepare for Source Installation

To successfully run Odoo from source, several foundational components must be correctly set up on your system.

Python Environment:

Odoo requires Python 3.7 or a more recent version to operate. To download and install the latest compatible Python 3 version on your machine, please visit Python’s official download page.

During the Python installation process, ensure you check the option **Add Python 3 to PATH**. Afterwards, click on **Customize Installation** and verify that the **pip** package installer is also selected for installation.

Note

If Python 3 is already present on your system, confirm that its version is 3.7 or newer, as older versions are not compatible with Odoo. Additionally, verify that pip is properly installed and configured for this specific Python version.

PostgreSQL Database:

Odoo utilizes PostgreSQL as its robust database management system. You will need to download and install PostgreSQL; supported versions include 12.0 and later. By default, PostgreSQL typically includes only the postgres user. However, Odoo strictly prohibits connecting to the database using the postgres superuser account, so you must create a new PostgreSQL user with appropriate privileges:

  1. Add PostgreSQL’s bin directory (usually located at C:\Program Files\PostgreSQL\<version>\bin) to your system’s PATH environment variable. This allows you to execute PostgreSQL commands from any directory.
  2. Create a dedicated PostgreSQL user with a strong password using the pgAdmin graphical user interface:
    1. Open **pgAdmin**, the administration and development platform for PostgreSQL.
    2. Double-click on your PostgreSQL server entry to establish a connection.
    3. Expand the server tree, right-click on Login/Group Roles, and select Create > Login/Group Role....
    4. Enter your desired username in the **Role Name** field (for example, odoo).
    5. Navigate to the **Definition** tab, enter a secure password (e.g., odoo for development, but choose a stronger one for production), and then click **Save**.
    6. Go to the **Privileges** tab and ensure that both **Can login?** is set to Yes and **Create database?** is also set to Yes. These permissions are necessary for Odoo to function correctly.

System Dependencies:

Before installing Odoo’s specific Python dependencies, you must first download and install the Build Tools for Visual Studio. During their installation, when prompted, make sure to select **C++ build tools** within the **Workloads** tab and proceed with their installation. These tools are often required to compile certain Python packages.

All of Odoo's Python dependencies are comprehensively listed in the requirements.txt file, which is conveniently located at the root of your Odoo Community directory.

Tip

To prevent conflicts and ensure a clean environment, it is highly recommended to isolate Python module packages between different Odoo instances or from your global system environment. You can achieve this effectively by utilizing virtualenv to create isolated Python environments for each Odoo project.

Navigate to the path of your Odoo Community installation (referred to as CommunityPath) and execute **pip** on the requirements file. This should be done in a terminal **with Administrator privileges** to ensure all packages are installed correctly:

C:\> cd \CommunityPath
C:\> pip install setuptools wheel
C:\> pip install -r requirements.txt

For Odoo interfaces in languages with a right-to-left (RTL) script, such as Arabic or Hebrew, the `rtlcss` package is a necessary addition:

  1. First, download and install Node.js on your system.
  2. Then, install `rtlcss` globally using the Node Package Manager (npm):
    C:\> npm install -g rtlcss
  3. Finally, edit your System Environment’s `PATH` variable to include the directory where `rtlcss.cmd` is located (typically: C:\Users\<user>\AppData\Roaming\npm\). This ensures the command is accessible system-wide.

Important

The wkhtmltopdf utility, critical for generating PDF reports, is not installed via pip and requires manual installation. It is absolutely essential to install version 0.12.5 to guarantee proper support for headers and footers in your generated PDF documents. For more detailed installation instructions and information regarding various versions, please consult our dedicated wiki page.

Running Odoo from Source

Once all the necessary system components and Python dependencies are properly set up and configured, Odoo can be launched by executing odoo-bin. This executable serves as the command-line interface for the Odoo server and is located at the root of your Odoo Community directory.

To configure the Odoo server, you have two primary options: you can either specify command-line arguments directly when launching the server, or you can utilize a dedicated configuration file. This flexibility allows for easy adjustments to server behavior and settings.

Tip

When working with the Enterprise edition, it is crucial to add the absolute path to your enterprise add-ons directory to the addons-path argument. This path must be specified at the beginning of the addons-path list (i.e., before any other add-on paths) to ensure that all Enterprise add-ons are loaded correctly and take precedence.

Commonly required configurations include defining the PostgreSQL user credentials (username and password) that Odoo will use to connect to its database, as well as specifying any custom add-on paths beyond the default ones. These custom paths are essential for Odoo to discover and load your own developed modules.

A typical command used to launch the Odoo server from your Community installation would look like this:

C:\> cd CommunityPath/
C:\> python odoo-bin -r dbuser -w dbpassword --addons-path=addons -d mydb

In this command: CommunityPath represents the absolute path to your Odoo Community installation directory; dbuser is the login username for your PostgreSQL database; dbpassword is the corresponding password for that PostgreSQL user; and mydb is the designated name of your PostgreSQL database where Odoo will store its data.

After the server has successfully started (you will see an INFO log message similar to odoo.modules.loading: Modules loaded. in the console), open your preferred web browser and navigate to http://localhost:8069. You can then log in using the base administrator account. The default credentials are admin for the Email field and, again, admin for the Password. Congratulations, you have now successfully logged into your own Odoo database!

Tip

  • From within the Odoo web interface, you have the ability to effortlessly create and manage new users for your Odoo system, assigning them different roles and access rights.
  • It is important to distinguish between the user account you use to log into Odoo’s web interface (e.g., 'admin') and the database user specified by the --db_user CLI argument. These are separate credentials for different purposes.

Docker Deployment

For developers and administrators who leverage containerization, comprehensive documentation on how to integrate and utilize Odoo with Docker is readily available. This detailed resource can be found on the official Odoo Docker image page. It provides all the necessary information, configurations, and best practices for deploying and managing Odoo instances within Docker containers, offering a highly portable and scalable solution for your Odoo deployments.

Was this answer helpful? 0 Users Found This Useful (0 Votes)