Odoo, a comprehensive suite of business management software, offers various installation methods tailored to different use cases. Whether you need a quick trial, a robust production environment, or a flexible setup for development, there’s an option to suit your needs.
This document aims to detail most of the available installation options, guiding you through each process to ensure a successful Odoo deployment.
Odoo Editions
Odoo is available in two distinct editions: the Community and Enterprise versions. The Enterprise version is accessible through Odoo Online, and its source code is restricted to Enterprise customers and partners. In contrast, the Community version is freely available to all users.
If you are currently using the Community version and wish to upgrade to Enterprise, please refer to the guide on Switching from Community to Enterprise (this typically excludes source installations).
Online Installation Methods
For those looking for the simplest way to experience or deploy Odoo, online options provide immediate access without local installation complexities.
Demo Instances
To quickly get acquainted with Odoo, temporary demo instances are readily available. These shared instances are active for only a few hours, offering a commitment-free environment to explore features and experiment with Odoo’s functionalities directly through your web browser, requiring no local installation.
Odoo Online
Odoo Online provides private instances that are remarkably easy to set up, fully managed, and seamlessly migrated by Odoo S.A. It includes a free tier, making it an excellent choice for discovering and testing Odoo. This platform allows for non-code customizations (those incompatible with custom modules or the Odoo Apps Store) without the need for any local installation.
Odoo Online is suitable for both initial testing and long-term production use. Similar to demo instances, it requires only a web browser to access, eliminating the need for any local software installation.
Packaged Installers
Odoo offers convenient packaged installers for various operating systems, including Windows, deb-based distributions (like Debian and Ubuntu), and RPM-based distributions (such as Fedora, CentOS, and RHEL). These packages are available for both the Community and Enterprise versions of Odoo.
While these packages automate the setup of all necessary dependencies (particularly for the Community version), keeping them up-to-date might require some additional maintenance effort.
Official Community packages, complete with all relevant dependency requirements, are available on our nightly server. Both Community and Enterprise packages can be downloaded from our download page (note that you must be logged in as a paying customer or partner to download Enterprise packages).
Windows Installation
- Download the appropriate installer from either our nightly server (Community only) or the download page (for any edition).
- Execute the downloaded file to begin the installation process.
Warning: On Windows 8 and later, you might encounter a security warning titled “Windows protected your PC”. In this case, click on More Info and then on Run anyway to proceed.
- Accept the User Account Control (UAC) prompt.
- Follow the on-screen instructions through the various installation steps.
Odoo will automatically launch once the installation is complete, ready for your immediate use.
Linux Installation
Prepare Your Environment
Odoo relies on a PostgreSQL server for proper operation. The default configuration for the Odoo ‘deb’ package assumes the PostgreSQL server is 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
wkhtmltopdf
is not installed via pip and must be manually installed. Ensure you use version 0.12.5 to guarantee support for headers and footers in your Odoo documents. For further details on different versions and their specifics, please consult our wiki page on Wkhtmltopdf.
Using the Odoo Repository
Odoo S.A. provides a dedicated repository compatible with Debian and Ubuntu distributions. You can install the _Odoo Community Edition_ by executing 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 conveniently keep your Odoo installation up-to-date using the standard apt-get upgrade
command.
Installing from Distribution Packages
Alternatively to using the repository, you can download the ‘deb’ packages for both the _Community_ and _Enterprise_ editions directly from the official download page.
After downloading, execute the following commands as root to install Odoo:
# dpkg -i <path_to_installation_package> # this probably fails with missing dependencies
# apt-get install -f # should install the missing dependencies
# dpkg -i <path_to_installation_package>
This process will install Odoo as a system service, create the necessary PostgreSQL user, and automatically start the Odoo server.
- The
python3-xlwt
Debian package is not available in Debian Buster or Ubuntu 18.04. This Python module is essential for exporting data into XLS format. If this feature is required, you will need to install it manually. - The
num2words
Python package is also absent in Debian Buster and Ubuntu 18.04. Without it, textual amounts will not be rendered by Odoo, potentially causing issues with modules likel10n_mx_edi
. If this functionality is needed, you can install it manually with:$ sudo pip3 install num2words
Source Installation
The "source installation" method involves running Odoo directly from its source code, rather than performing a traditional software installation. This approach offers significant advantages, particularly for module developers, as the Odoo source code becomes more easily accessible compared to packaged installations.
Running from source also provides greater flexibility and explicit control over starting and stopping Odoo, unlike the services set up by packaged installations. It allows for overriding settings using command-line parameters without the need to edit configuration files. Furthermore, it offers superior control over the system's setup, simplifying the process of maintaining and running multiple Odoo versions concurrently on the same system.
Fetching the Sources
You can obtain the Odoo source code through two primary methods: as a zip archive or by cloning a Git repository.
Archive Downloads
- Community Edition:
- Enterprise Edition:
Git Cloning
This method requires Git to be installed on your machine and a basic understanding of Git commands. When cloning a Git repository, you’ll choose between HTTPS or SSH. If you are unsure, HTTPS is generally the best option. If you are following the Getting Started developer tutorial or planning to contribute to the Odoo source code, SSH is recommended.
C:\> git clone https://github.com/odoo/odoo.git
C:\> git clone https://github.com/odoo/enterprise.git
addons-path
option to include the Enterprise version folder. Therefore, you need to clone both the Community and Enterprise repositories for a functional Odoo Enterprise installation. Refer to the Editions section to learn how to gain access to the Enterprise repository.
Preparation for Source Installation
Python Requirements
Odoo requires Python 3.7 or a later version to operate. Please visit Python’s download page to download and install the latest compatible version of Python 3 on your machine.
During the Python installation process, ensure you check the option Add Python 3 to PATH. Then, click Customize Installation and confirm that pip is selected for installation.
PostgreSQL Database Setup
Odoo utilizes PostgreSQL as its database management system. Download and install PostgreSQL; supported versions include 12.0 and later.
By default, PostgreSQL only has a `postgres` user. However, Odoo disallows connecting as `postgres`, so you must create a new PostgreSQL user with appropriate permissions:
- Add PostgreSQL’s
bin
directory (typically:C:\Program Files\PostgreSQL\<version>\bin
) to your system’sPATH
environment variable. - Create a PostgreSQL user with a password using the pgAdmin GUI:
- Open pgAdmin.
- Double-click the server to establish a connection.
- Select [Object > Create > Login/Group Role...].
- Enter your desired username in the Role Name field (e.g.,
odoo
). - Navigate to the Definition tab, enter a password (e.g.,
odoo
), and then click Save. - Open the Privileges tab, set Can login? to
Yes
, and Create database? toYes
.
Installing Dependencies
Before proceeding with dependency installation, you must download and install the Build Tools for Visual Studio. During the installation prompt, select C++ build tools under the Workloads tab and proceed with the installation.
Odoo’s essential dependencies are listed in the requirements.txt
file, which is located at the root of your Odoo community directory.
Navigate to the path of your Odoo Community installation (CommunityPath
) and execute pip on the requirements file in a terminal **with Administrator privileges**:
C:\> cd \CommunityPath
C:\> pip install setuptools wheel
C:\> pip install -r requirements.txt
For languages with a right-to-left interface (such as Arabic or Hebrew), the rtlcss
package is also required:
- Download and install Node.js.
- Install
rtlcss
globally using npm:C:\> npm install -g rtlcss
- Edit the System Environment’s
PATH
variable to include the folder wherertlcss.cmd
is located (typically:C:\Users\<user>\AppData\Roaming\npm\
).
wkhtmltopdf
is not installed via pip and necessitates manual installation. Ensure you obtain version 0.12.5 to guarantee proper support for headers and footers in generated PDF documents. Refer to our wiki for more detailed information on various versions.
Running Odoo from Source
Once all dependencies are successfully set up, Odoo can be launched by executing odoo-bin
, which serves as the command-line interface for the Odoo server. This executable is found at the root of your Odoo Community directory.
To configure the server, you have the flexibility to specify command-line arguments directly or provide a configuration file.
enterprise
add-ons to the addons-path
argument. This path must be listed before other paths in addons-path
to ensure the add-ons are loaded correctly.
Commonly required configurations include:
- The PostgreSQL username and password for database access.
- Custom add-on paths, beyond the default locations, to load your proprietary or third-party modules.
A typical command to launch the Odoo server from source would look like this:
C:\> cd CommunityPath/
C:\> python odoo-bin -r dbuser -w dbpassword --addons-path=addons -d mydb
Here, CommunityPath
refers to the directory where your Odoo Community installation resides, dbuser
is your PostgreSQL login username, dbpassword
is the corresponding PostgreSQL password, and mydb
is the name of your PostgreSQL database.
After the server has successfully started (indicated by the INFO log odoo.modules.loading: Modules loaded.
), open your web browser and navigate to http://localhost:8069. Log in with the base administrator account using admin
for both the Email and the Password. Congratulations, you have successfully logged into your own Odoo database!
- From within the Odoo web interface, you can then create and manage new users for your system.
- It's important to remember that the user account you use to log into Odoo’s web interface is distinct from the database user specified by the
--db_user
CLI argument.
Docker Deployment
For users who prefer containerization, comprehensive documentation on deploying Odoo with Docker is available on the official Odoo Docker image page. This method offers a streamlined approach for both development and production environments, leveraging Docker's benefits for consistency and isolation.