Odoo offers a variety of installation methods, catering to diverse use cases and deployment preferences. This comprehensive guide outlines the primary installation options available for Odoo 16.0, ensuring you can choose the most suitable approach for your specific needs, from quick trials to robust production environments.
Overview of Odoo Installation Methods
- Online: This is the most straightforward approach for quickly trying Odoo or for production environments managed and hosted by Odoo S.A.
- Packaged Installers: Ideal for testing, module development, and can serve as a foundation for long-term production use, although it may require additional deployment and maintenance efforts.
- Source Installation: Provides significant flexibility, enabling the coexistence of multiple Odoo versions on a single system. This method is excellent for advanced module development and can form the basis for highly customized production deployments.
- Docker: For developers and system administrators accustomed to Docker for development or deployment, an official Odoo Docker base image is readily available for a streamlined and containerized setup.
Odoo Editions
Odoo is available in two distinct editions: Community and Enterprise. The Enterprise version is exclusively accessible on Odoo Online, with its source code access restricted to Enterprise customers and partners. Conversely, the Community version is freely available to all users globally.
Should you be using the Community version and wish to upgrade to Enterprise, please consult the Switch from Community to Enterprise guide. Note that this upgrade path typically excludes source installations.
Online Installation Options
Demo Instances
For a rapid introduction to Odoo's extensive capabilities without any long-term commitment, demo instances are readily provided. These are shared instances, active for a limited duration of a few hours, making them perfect for exploring features, browsing, and hands-on experimentation.
Utilizing these demo instances requires absolutely no local installation; only a standard web browser is needed to get started immediately.
Odoo Online Service
Odoo Online offers private instances that are exceptionally easy to get started with, fully managed, and meticulously migrated by Odoo S.A. This service begins with a generous free tier and is highly suitable for discovering, testing, and performing non-code customizations (i.e., those incompatible with custom modules or the Odoo Apps Store) without the necessity of a local installation.
This service can be effectively employed for both initial Odoo testing and for robust, long-term production deployments, providing a hassle-free experience.
Similar to demo instances, Odoo Online instances do not require any local installation, functioning entirely within the convenience of a web browser.
Using Packaged Installers
Odoo provides convenient packaged installers designed 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, simplifying the setup process.
While these packages automatically configure all necessary dependencies (particularly for the Community version), keeping them updated might require periodic attention and manual intervention.
Official Community packages, complete with all relevant dependency requirements, can be found on our nightly server. Both Community and Enterprise packages are available for download from our download page; however, Enterprise packages typically require a login as a paying customer or partner for access.
Windows Installation Guide
- Download the appropriate installer from our nightly server (Community only) or the official download page (for any edition).
- Execute the downloaded file to commence the installation process.
Accept the User Account Control (UAC) prompt to allow the installer to make changes to your system. Follow the clear, on-screen instructions through the various installation steps to complete the setup.Warning: On Windows 8 and later operating systems, you might encounter a security warning titled “Windows protected your PC.” If this alert appears, simply click on More Info and then select Run anyway to safely proceed with the installation.
Odoo will automatically launch and be ready for use upon the successful completion of the installation process.
Linux Installation Guide
Preparation: Odoo relies on a PostgreSQL server for its proper operation and data management. The default configuration for the Odoo 'deb' package anticipates the PostgreSQL server being located on the same host 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 reports with headers and footers, is not installed via **pip**. It requires manual installation of version 0.12.5. For further details and specific instructions on different versions, please refer to our dedicated wiki page.
Repository Installation: Odoo S.A. maintains a dedicated repository that can be effectively utilized with Debian and Ubuntu distributions. To install _Odoo Community Edition_ using this repository, perform the following sequence of commands:
$ 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 conveniently keep your Odoo setup current by regularly using the standard `apt-get upgrade` command.
Note: At the present moment, a nightly repository specifically for the Enterprise Edition is not available through this method.
Distribution Package Installation: As an alternative to using the repository, both _Community_ and _Enterprise_ edition 'deb' packages can be downloaded directly from the official download page.
Once the package is downloaded, execute the following commands as root in your terminal:
# dpkg -i <path_to_installation_package> # This initial step may 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 installation after dependencies are met
This comprehensive process will install Odoo as a system service, establish the necessary PostgreSQL user, and automatically initiate the Odoo server, ensuring a complete setup.
Warning:
- The `python3-xlwt` Debian package is not present in Debian Buster or Ubuntu 18.04. This Python module is crucial for exporting data into XLS format within Odoo. If this functionality is required, you will need to install it manually.
- Similarly, the `num2words` Python package is also absent in Debian Buster and Ubuntu 18.04. Without it, textual amounts will not be correctly rendered by Odoo, which could potentially cause issues with modules like `l10n_mx_edi`. If this feature is needed, install it manually using:
$ sudo pip3 install num2words
Installing from Source Code
A "source installation" fundamentally involves running Odoo directly from its source code rather than deploying pre-built or packaged versions. This method offers several distinct advantages, particularly for developers and advanced users.
It provides module developers with significantly easier access to the Odoo source, greatly simplifying customization, debugging, and direct modification. Furthermore, it grants more flexible and explicit control over starting and stopping Odoo compared to service-based installations, and allows for convenient overriding of settings via command-line parameters without the need to modify a static configuration file.
Ultimately, a source installation offers the greatest degree of control over the system's setup and configuration, facilitating the ability to run and maintain multiple Odoo versions concurrently on a single machine.
Obtaining the Source Code
The Odoo source code can be acquired through two primary methods: as a compressed zip archive or by cloning a Git repository.
Archive Download: For the Community Edition, you have several options to download the source archives:
- The Official download page
- The GitHub repository
- The Nightly server for the latest builds
For the Enterprise Edition, source archives are available from:
- The Official download page (requires login)
- The GitHub repository (requires access)
Git Cloning: This method necessitates that Git is already installed on your machine and that you possess a basic understanding of Git commands. When cloning a repository, you must choose between cloning with HTTPS or SSH. For most general users, HTTPS is usually the simpler and more straightforward option. However, if you intend to follow the Getting started developer tutorial or plan on contributing directly to the Odoo source code, SSH is the recommended and more secure choice.
C:\> git clone https://github.com/odoo/odoo.git
C:\> git clone https://github.com/odoo/enterprise.git
Note: It is crucial to understand that the Enterprise Git repository does not contain the complete Odoo source code; it is solely a collection of extra add-ons. The main server code resides entirely within the Community version. To run the Enterprise version, you must launch the server from the Community version and specifically configure the `addons-path` option to include the folder containing the Enterprise add-ons. Therefore, both the Community and Enterprise repositories need to be cloned for a fully functional Odoo Enterprise installation. Please refer to the Editions section for information on gaining access to the Enterprise repository.
Preparing Your Environment for Source Installation
Python Setup: Odoo requires Python 3.7 or a later version to operate correctly. We recommend visiting Python's official download page to obtain and install the latest compatible Python 3 release for your specific machine.
During the Python installation process, ensure you check the option Add Python 3 to PATH. Following this, click on Customize Installation and carefully verify that pip is selected for installation, as it is essential for managing Odoo's Python dependencies.
Note: If Python 3 is already installed, please confirm that its version is 3.7 or newer, as previous versions are not compatible with Odoo. Additionally, verify that pip is correctly installed and associated with your chosen Python version.
PostgreSQL Setup: Odoo fundamentally utilizes PostgreSQL as its robust database management system. Please download and install PostgreSQL; supported versions include 12.0 and later for optimal compatibility.
By default, PostgreSQL includes a single user named `postgres`. However, Odoo strictly prohibits connecting as the `postgres` user. Consequently, you must create a new dedicated PostgreSQL user:
- Begin by adding PostgreSQL’s `bin` directory (typically found at `C:\Program Files\PostgreSQL\<version>\bin`) to your system's `PATH` environment variable. This allows you to execute PostgreSQL commands from any directory.
- Proceed to create a new PostgreSQL user complete with a password using the pgAdmin graphical user interface:
- Open pgAdmin, the PostgreSQL administration tool.
- Double-click on your PostgreSQL server to establish a connection.
- Select the appropriate option to create a new login/group role.
- Enter your desired username in the Role Name field (e.g., `odoo`).
- Navigate to the Definition tab, enter a secure password (e.g., `odoo`), and then click Save to confirm.
- Finally, go to the Privileges tab and ensure that both Can login? is set to `Yes` and Create database? is also set to `Yes`.
Dependency Installation: Prior to installing Odoo's Python dependencies, a crucial step is to download and install the Build Tools for Visual Studio. When prompted during the installation, ensure you select C++ build tools within the Workloads tab and proceed with their installation, as these are often required for compiling certain Python packages.
Odoo's comprehensive list of Python dependencies is conveniently detailed in the `requirements.txt` file, which is located at the root of your Odoo community directory.
Tip: To prevent potential conflicts between Python module packages from different Odoo instances or with your system's global environment, it is highly recommended practice to utilize virtualenv. This tool allows you to create isolated Python environments for each Odoo installation, ensuring clean and conflict-free dependency management.
Navigate to the path of your Odoo Community installation (`CommunityPath`) and then execute the following **pip** commands in a terminal with **Administrator privileges**:
C:\> cd \CommunityPath
C:\> pip install setuptools wheel
C:\> pip install -r requirements.txt
For languages requiring a right-to-left (RTL) interface, such as Arabic or Hebrew, the `rtlcss` package is also a necessary component:
- First, download and install Node.js, which is required for npm.
- Next, install `rtlcss` globally using the npm package manager:
C:\> npm install -g rtlcss - Finally, edit your System Environment's `PATH` variable to explicitly include the folder where `rtlcss.cmd` is located (this is typically: `C:\Users\<user>\AppData\Roaming\npm\`), allowing the system to find the command.
Important: As highlighted previously, `wkhtmltopdf` is not managed by **pip**. It absolutely must be manually installed in version 0.12.5 to ensure proper support for headers and footers when generating PDF documents. Please refer to our wiki for comprehensive and detailed information on compatible versions and installation instructions.
Running Odoo from Source
Once all prerequisite software and dependencies are successfully set up and configured, Odoo can be launched by executing `odoo-bin`. This executable serves as the server's primary command-line interface and is conveniently located at the root of your Odoo Community directory.
To configure the Odoo server effectively, you have two flexible options: you can either specify command-line arguments directly when launching, or you can utilize a dedicated configuration file for more persistent settings.
Tip: For deploying the Enterprise edition, it is critically important to append the absolute path to the `enterprise` add-ons directory to the `addons-path` argument. Furthermore, this path must precede all other paths listed in `addons-path` to guarantee that Enterprise add-ons are loaded correctly and prioritized.
Common and necessary configurations often include:
- The PostgreSQL user and its corresponding secure password for database access.
- Custom add-on paths, extending beyond the default ones, to enable the loading of your own developed modules and third-party add-ons.
A typical command for launching the Odoo server from source would appear as follows:
C:\> cd CommunityPath/
C:\> python odoo-bin -r dbuser -w dbpassword --addons-path=addons -d mydb
In this command, `CommunityPath` refers to the absolute path of your Odoo Community installation directory, `dbuser` represents your PostgreSQL login username, `dbpassword` is the secure password for that PostgreSQL user, and `mydb` is the chosen name of your PostgreSQL database.
After the server has successfully started (which is typically indicated by the INFO log message `odoo.modules.loading: Modules loaded.` appearing in the console), simply open your web browser and navigate to http://localhost:8069. Log in using the default base administrator account: enter `admin` for both the Email and, again, `admin` for the Password. Congratulations, you have successfully accessed and logged into your very own Odoo database!
Tip:
- From within this web interface, you can effortlessly create and manage new users for your Odoo system.
- It is important to remember that the user account you use to log into Odoo's web interface is distinct and separate from the `--db_user` command-line argument used for PostgreSQL database connection.
Docker Deployment for Odoo
For comprehensive and detailed documentation on how to effectively use Odoo with Docker, please refer to the official Odoo Docker image page. This valuable resource provides in-depth instructions, configuration examples, and best practices for deploying and managing Odoo within a Dockerized environment, ensuring a robust and scalable setup.
