Installation Odoo · 14 min read · Sep 11, 2025

Comment installer le logiciel ERP Odoo sur un serveur Ubuntu 24.04

Odoo (anciennement connu sous le nom d’OpenERP) est une suite auto-hébergée de plus de 10 000 applications open source. Odoo est une solution ERP gratuite et open source pour plusieurs types d’entreprises. Odoo, anciennement OpenERP, est une solution ERP et CRM et bien plus encore. Elle fournit la gestion de la relation client (CRM), le pipeline de vente, la gestion de projet, la fabrication, la facturation, la comptabilité, le commerce électronique, et bien d’autres.

Odoo est l’une des solutions ERP complètes pour votre entreprise. Il dispose de 30 modules principaux par défaut et fournit plus de 4500 modules communautaires pour aider vos multiples entreprises.

Dans ce tutoriel, vous allez installer l’ERP open source Odoo sur le serveur Ubuntu 24.04. Vous installerez et configurerez la dernière version stable d’Odoo 17, configurerez la base de données PostgreSQL pour Odoo, et enfin, configurerez Nginx comme proxy inverse pour l’application Odoo.

Prérequis

Pour commencer ce tutoriel, vous aurez besoin des éléments suivants :

  • Un serveur Ubuntu 24.04 - Cet exemple utilise un serveur Ubuntu avec le nom d’hôte ‘odoo-server’.
  • Un utilisateur non-root avec des privilèges sudo root/administrateur - ou vous pouvez également utiliser l’utilisateur root.
  • Un nom de domaine pointant vers l’adresse IP du serveur - pour la production, vous aurez besoin d’un nom de domaine pour l’installation d’Odoo.

Installation des dépendances

Pour installer Odoo, vous devrez d’abord installer certaines dépendances de paquets sur votre système Ubuntu. L’ERP Odoo est une application web principalement écrite en Python, donc vous devrez également installer certains paquets Python.

Avant de commencer à installer des paquets, exécutez la commande apt suivante pour mettre à jour et rafraîchir votre index de paquets.

sudo apt update

mise à jour du dépôt

Ensuite, installez les dépendances de paquets pour Odoo via la commande apt suivante. Cette installation inclura la dernière version de Python, les outils de compilation pour compiler les paquets Python, et certaines bibliothèques nécessaires à Odoo.

sudo apt install git wget python3 build-essential libzip-dev python3-dev libxslt1-dev python3-pip libldap2-dev python3-wheel libsasl2-dev python3-venv python3-setuptools node-less libjpeg-dev xfonts-75dpi xfonts-base libxrender1 libpq-dev libffi-dev fontconfig

Lorsque vous y êtes invité, saisissez y pour confirmer et appuyez sur ENTRÉE pour continuer. L’installation commencera.

installer les dépendances

Une fois Python et les autres dépendances installés, l’étape suivante consiste à installer Node.js, qui sera utilisé pour générer des fichiers statiques, et à installer le paquet wkhtmltopdf pour générer des rapports PDF.

Installation de Nodejs

Pour installer Odoo, vous devez vous assurer que Node.js est installé sur votre système. Node.js est utilisé pour générer des fichiers statiques pour les applications web Odoo. Vous allez installer Node.js 20 à partir du dépôt tiers Nodesource à cette étape.

Exécutez la commande suivante pour télécharger et configurer le dépôt Nodesource pour Node.js 20.

sudo curl -sL https://deb.nodesource.com/setup_20.x | sudo -E bash -

Cette commande téléchargera et exécutera le script d’installation. Ensuite, le script d’installation configurera automatiquement le dépôt pour Node.js, ajoutera la clé GPG, et mettra automatiquement à jour et rafraîchira l’index des paquets sur votre système.

ajouter le dépôt nodejs

Ensuite, exécutez la commande apt suivante pour installer le paquet Node.js. Lorsque vous y êtes invité, saisissez y pour confirmer et appuyez sur ENTRÉE pour continuer.

sudo apt install nodejs

installer nodejs

Une fois Node.js installé, exécutez la commande npm suivante pour installer le paquet ‘rtlcss‘.

Le paquet ‘rtlcss‘ est nécessaire pour Odoo, surtout si vous utilisez l’interface utilisateur de droite à gauche pour des langues spécifiques comme l’arabe et l’hébreu.

sudo npm install -g rtlcss

installer rtlcss

Installation de Wkhtmltopdf

L’ERP open source Odoo nécessite que le paquet wkhtmltopdf soit installé. Ce paquet est nécessaire pour rendre les pages HTML en PDF et divers formats d’image via Qt Webkit. Le paquet wkhtmltopdf sera installé manuellement via le paquet .deb sur le système Ubuntu.

Exécutez la commande suivante pour télécharger le fichier .deb du paquet Wkhtmltopdf.

cd /tmp  
wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-3/wkhtmltox_0.12.6.1-3.jammy_amd64.deb

Installez le paquet Wkhtmltopdf via la commande dpkg ci-dessous.

sudo dpkg -i wkhtmltox_0.12.6.1-3.jammy_amd64.deb

Si vous obtenez une erreur telle qu’un paquet manquant, corrigez-la via la commande apt suivante.

sudo apt install -f

installer wkhtmltopdf

Après l’installation de Wkhtmltopdf, vous pouvez vérifier le fichier binaire du paquet Wkhtmltopdf qui est disponible par défaut dans le répertoire ‘/usr/local/bin‘. Vous devriez voir deux programmes : ‘wkhtmltopdf’ et ‘wkhtmltoimage‘.

ls /usr/local/bin

Maintenant, exécutez la commande suivante pour vérifier la variable d’environnement $PATH et vous assurer que le répertoire ‘/usr/local/bin‘ est disponible dans le $PATH binaire. Sinon, le paquet Wkhtmltopdf ne fonctionnera pas correctement.

echo $PATH

Enfin, exécutez la commande suivante pour vous assurer que le chemin binaire pour le paquet Wkhtmltopdf est disponible. Si le paquet Wkhtmltopdf est disponible, vous devriez recevoir une sortie du chemin complet du paquet Wkhtmltopdf.

which wkhtmltopdf  
which wkhtmltoimage

vérifier wkhtmltopdf

Installation du serveur de base de données PostgreSQL

L’ERP open source Odoo prend en charge des bases de données comme MySQL, SQLite et PostgreSQL. À cette étape, vous allez installer et utiliser PostgreSQL comme base de données par défaut pour votre installation Odoo. Vous allez également configurer le rôle PostgreSQL et apporter des modifications à la configuration de PostgreSQL.

Exécutez la commande apt suivante pour installer le serveur de base de données PostgreSQL. Lorsque vous y êtes invité pour confirmation, saisissez y, et appuyez sur ENTRÉE.

sudo apt install postgresql

installer postgresql

Après l’installation de PostgreSQL, exécutez la commande suivante pour vérifier PostgreSQL et vous assurer que le service est activé et en cours d’exécution.

sudo systemctl is-enabled postgresql  
sudo systemctl status postgresql

Dans la sortie suivante, vous pouvez voir que le service PostgreSQL est activé et sera exécuté automatiquement au démarrage du système. Et l’état de PostgreSQL est en cours d’exécution.

vérifier postgresql

Ensuite, vous allez créer un nouveau rôle pour Odoo. Exécutez la commande suivante pour vous connecter à l’utilisateur ‘postgres‘ et créer un nouveau rôle avec le nom ‘odoo‘.

su - postgres  
createuser -sdP odoo

Saisissez le mot de passe pour le nouveau rôle ‘odoo‘ et répétez-le.

Maintenant, connectez-vous à l’interface en ligne de commande PostgreSQL via la commande psql ci-dessous.

psql

Exécutez la requête suivante pour vérifier la liste des rôles sur PostgreSQL et vous assurer que le rôle ‘odoo‘ est disponible.


du

Maintenant, saisissez ‘ q‘ pour quitter l’interface en ligne de commande PostgreSQL. Ensuite, tapez ‘exit‘ pour vous déconnecter de l’utilisateur postgres.

créer et vérifier l'utilisateur postgres

Maintenant que vous avez créé un rôle pour Odoo, vous allez tester l’authentification pour le rôle ‘odoo’.

Connectez-vous en tant qu’utilisateur ‘postgres‘ et vérifiez le rôle ‘odoo’ en vous connectant à l’interface en ligne de commande PostgreSQL via la commande psql ci-dessous.

su - postgres  
psql -h 127.0.0.1 -U odoo -d postgres

Après vous être connecté, vérifiez en utilisant la requête suivante.


du

Vous devriez maintenant voir que vous êtes connecté à PostgreSQL en utilisant le rôle ‘odoo‘.

se connecter à postgresql

À ce stade, la préparation de la base de données PostgreSQL pour Odoo est maintenant terminée. Ensuite, vous allez commencer l’installation d’Odoo en téléchargeant le code source et en installant les dépendances Python.

Téléchargement d’Odoo 17

Pour cette démo, vous allez configurer et exécuter Odoo v17 avec l’utilisateur ‘odoo’. Vous allez donc créer un nouvel utilisateur Unix ‘odoo’ et télécharger la dernière version du code source d’Odoo 17.

Exécutez la commande suivante pour créer un nouvel utilisateur ‘odoo‘. Dans cet exemple, le répertoire personnel par défaut pour l’utilisateur ‘odoo‘ sera ‘/opt/odoo‘ et le shell par défaut est bash.

sudo adduser --system --group --home=/opt/odoo --shell=/bin/bash odoo

Maintenant, déplacez le répertoire de travail vers ‘/opt/odoo‘ et téléchargez le code source d’Odoo via la commande git suivante. Dans cet exemple, vous allez installer Odoo 17.

cd /opt/odoo  
git clone https://github.com/odoo/odoo.git --depth 1 --branch 17.0 --single-branch odoo-server

Vous devriez maintenant obtenir le nouveau répertoire ‘odoo-server‘ à l’intérieur du répertoire ‘/opt/odoo‘.

Enfin, exécutez la commande suivante pour changer la propriété du code source d’Odoo à l’utilisateur et au groupe ‘odoo‘.

sudo chown -R odoo:odoo /opt/odoo/odoo-server

Après avoir téléchargé le code source d’Odoo, vous allez maintenant commencer l’installation des dépendances de paquets Python pour Odoo.

Installation des dépendances Python pour Odoo

À cette étape, vous allez configurer l’environnement virtuel Python pour Odoo et installer les dépendances Python via la commande pip3.

Déplacez le répertoire de travail vers ‘/opt/odoo/odoo-server’ et créez un nouvel environnement virtuel Python ‘venv’ via la commande suivante.

cd /opt/odoo/odoo-server  
python3 -m venv venv

Ensuite, activez l’environnement virtuel Python ‘venv’ via la commande suivante.

source venv/bin/activate

Après avoir activé l’environnement virtuel Python, vous verrez que votre shell actuel a changé pour ressembler à ‘(venv) root@hostname…‘.

Maintenant, exécutez la commande pip3 suivante pour installer le paquet Python wheel et installer les dépendances Python d’Odoo via le fichier requirements.txt.

pip3 install wheel  
pip3 install -r requirements.txt

installer les dépendances odoo

Après l’installation des dépendances Python, exécutez la commande suivante pour quitter l’environnement virtuel Python ‘venv’.

deactivate

Vous avez maintenant téléchargé le code source d’Odoo et installé les dépendances Python. Ensuite, vous allez créer une nouvelle configuration et un répertoire pour l’installation d’Odoo.

Création de la configuration d’Odoo

Créez un nouveau fichier de configuration ‘/etc/odoo.conf‘ en utilisant l’éditeur nano suivant.

sudo nano /etc/odoo.conf

Ajoutez la configuration suivante au fichier. Et assurez-vous de changer le ‘ admin_passwd ‘ et les détails de l’utilisateur de la base de données et du mot de passe avec vos détails.

[options]  
; Ceci est le mot de passe qui permet les opérations sur la base de données :  
admin_passwd = adminpassodoo  
db_host = 127.0.0.1  
db_port = 5432  
db_user = odoo  
db_password = odoo  
addons_path = /opt/odoo/odoo-server/addons  
xmlrpc_port = 8069  
logfile = /var/log/odoo/odoo-server.log  
log_level = debug

Enregistrez le fichier et quittez l’éditeur.

Maintenant, changez la propriété du fichier de configuration d’Odoo ‘/etc/odoo.conf‘ à l’utilisateur système ‘odoo’.

sudo chown odoo:odoo /etc/odoo.conf

Ensuite, exécutez la commande suivante pour créer un nouveau répertoire qui sera utilisé pour stocker les journaux pour Odoo.

sudo mkdir /var/log/odoo

Puis, changez la propriété du répertoire de journaux d’Odoo ‘/var/log/odoo‘ à l’utilisateur ‘odoo‘ et changez les permissions à 755.

sudo chown odoo:odoo /var/log/odoo  
sudo chmod 755 /var/log/odoo

Exécution d’Odoo en tant que service Systemd

À ce stade, vous pouvez exécuter Odoo manuellement via la ligne de commande. Pour faciliter les choses, vous pouvez exécuter Odoo en tant que service systemd. Cela vous permet de gérer Odoo via la commande systemctl.

Vous allez maintenant créer un nouveau fichier de service systemd et exécuter Odoo en tant que service systemd.

Pour commencer, créez un nouveau fichier de service systemd ‘/lib/systemd/system/odoo-server.service’ en utilisant l’éditeur nano suivant.

sudo nano /lib/systemd/system/odoo-server.service

Ajoutez la configuration suivante au fichier.

[Unit]  
Description=Service Odoo 17.0  
Requires=postgresql.service  
After=network.target postgresql.service  
  
[Service]  
Type=simple  
SyslogIdentifier=odoo  
PermissionsStartOnly=true  
User=odoo  
Group=odoo  
ExecStart=/opt/odoo/odoo-server/venv/bin/python3 /opt/odoo/odoo-server/odoo-bin -c /etc/odoo.conf  
StandardOutput=journal+console  
  
[Install]  
WantedBy=multi-user.target

Enregistrez le fichier et quittez l’éditeur lorsque vous avez terminé.

Ensuite, rechargez le gestionnaire systemd pour appliquer un nouveau fichier de service via la commande systemctl ci-dessous.

sudo systemctl daemon-reload

Démarrez et activez le service ‘odoo-server’ en utilisant la commande suivante.

sudo systemctl start odoo-server  
sudo systemctl enable odoo-server

configurer le service odoo

Enfin, vérifiez le service Odoo pour vous assurer que le service est en cours d’exécution.

sudo systemctl status odoo-server

Vous devriez recevoir la sortie du service ‘odoo-server‘ en cours d’exécution.

vérifier odoo

Exécution d’Odoo avec Nginx en tant que proxy inverse

La manière recommandée de déployer Odoo en production est d’utiliser le proxy inverse. Cela vous permet d’exécuter Odoo uniquement sur localhost et tout accès client sera géré par le proxy inverse.

À cette étape, vous allez installer et configurer le serveur web Nginx en tant que proxy inverse pour l’application web Odoo. Vous allez également sécuriser l’installation d’Odoo avec SSL. Donc, avant de commencer à configurer Nginx, assurez-vous que vous avez le nom de domaine pointant vers l’adresse IP du serveur et généré SSL Letsencrypt.

Tout d’abord, modifiez le fichier de configuration d’Odoo ‘/etc/odoo.conf‘ en utilisant l’éditeur nano suivant.

sudo nano /etc/odoo.conf

Ajoutez la configuration suivante au fichier. Cette configuration exécutera Odoo en tant qu’application backend qui sera exécutée sur 127.0.0.1.

xmlrpc_interface = 127.0.0.1  
proxy_mode = True

Enregistrez le fichier et quittez l’éditeur lorsque vous avez terminé.

Maintenant, exécutez la commande suivante pour redémarrer le service ‘odoo-server’ et appliquer les nouvelles modifications.

sudo systemctl restart odoo-server

Ensuite, vous allez maintenant installer et configurer Nginx.

Exécutez la commande apt suivante pour installer le paquet du serveur web Nginx. Saisissez y lorsque vous y êtes invité et appuyez sur ENTRÉE pour continuer et confirmer l’installation.

sudo apt install nginx

installer nginx

Après l’installation de Nginx, créez une nouvelle configuration de blocs de serveur Nginx ‘/etc/nginx/sites-available/odoo.conf’ en utilisant l’éditeur nano suivant.

sudo nano /etc/nginx/sites-available/odoo.conf

Ajoutez la configuration ci-dessous au fichier et assurez-vous de changer le nom de domaine et le chemin des certificats SSL avec vos paramètres.

  
# serveur odoo  
upstream odoo {  
server 127.0.0.1:8069;  
}  
upstream odoochat {  
server 127.0.0.1:8072;  
}  
  
# http -> https  
server {  
listen 80;  
server_name odoo.howtoforge.local;  
rewrite ^(.*) https://$host$1 permanent;  
}  
  
server {  
listen 443 ssl http2;  
server_name odoo.howtoforge.local;  
proxy_read_timeout 720s;  
proxy_connect_timeout 720s;  
proxy_send_timeout 720s;  
  
# Ajouter des en-têtes pour le mode proxy d'Odoo  
proxy_set_header X-Forwarded-Host $host;  
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
proxy_set_header X-Forwarded-Proto $scheme;  
proxy_set_header X-Real-IP $remote_addr;  
  
# paramètres SSL  
ssl_certificate /etc/letsencrypt/live/odoo.howtoforge.local/fullchain.pem;  
ssl_certificate_key /etc/letsencrypt/live/odoo.howtoforge.local/privkey.pem;  
ssl_session_timeout 1d;  
ssl_session_cache shared:MozSSL:10m; # environ 40000 sessions  
ssl_session_tickets off;  
ssl_protocols TLSv1.2 TLSv1.3;  
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;  
ssl_prefer_server_ciphers off;  
ssl_dhparam /etc/ssl/certs/dhparam.pem;  
  
# journal  
access_log /var/log/nginx/odoo.access.log;  
error_log /var/log/nginx/odoo.error.log;  
  
# Rediriger les demandes longpoll vers le port de longpolling d'Odoo  
location /longpolling {  
proxy_pass http://odoochat;  
}  
  
# Rediriger les demandes vers le serveur backend d'Odoo  
location / {  
proxy_redirect off;  
proxy_pass http://odoo;  
}  
  
# gzip commun  
gzip_types text/css text/scss text/plain text/xml application/xml application/json application/javascript;  
gzip on;  
}

Enregistrez le fichier et fermez l’éditeur lorsque vous avez terminé.

Maintenant, activez la nouvelle configuration de bloc de serveur Nginx et vérifiez la configuration de Nginx pour vous assurer que vous avez les bonnes configurations.

sudo ln -s /etc/nginx/sites-available/odoo.conf /etc/nginx/sites-enabled/  
sudo nginx -t

Si vos configurations sont correctes, vous verrez le message de sortie tel que ‘test réussi - syntaxe OK’.

Enfin, exécutez la commande systemctl suivante pour redémarrer le service Nginx et appliquer les nouvelles modifications.

sudo systemctl restart nginx

Maintenant, vous avez terminé d’installer et de configurer le proxy inverse Nginx pour l’ERP Odoo. Vous pouvez maintenant accéder à l’installation via votre navigateur web.

vérifier nginx

Configuration du pare-feu UFW

Il est recommandé d’activer le pare-feu sur votre installation Odoo. À cette étape, vous allez apprendre à configurer le pare-feu UFW.

Par défaut, le serveur Ubuntu générique a le paquet ufw installé, donc vous pouvez simplement commencer à le configurer.

Exécutez la commande suivante pour ajouter l’application OpenSSH au pare-feu ufw. Ensuite, exécutez et activez le ufw.

sudo ufw allow "OpenSSH"  
sudo ufw enable

Lorsque vous y êtes invité pour confirmation, saisissez y et appuyez sur ENTRÉE pour continuer. Le service de pare-feu ufw sera activé et en cours d’exécution.

Ensuite, exécutez la commande suivante pour ajouter l’application ‘Nginx Full‘. Ce profil d’application est fourni par les paquets Nginx lors de l’installation par défaut et ouvrira à la fois les ports HTTP et HTTPS pour votre application.

sudo ufw allow "Nginx Full"

Enfin, vérifiez la liste des règles activées sur ufw. Vous devriez voir deux applications, ‘OpenSSH‘ et ‘Nginx Full‘ activées.

sudo ufw status

configurer ufw

Migration de la base de données Odoo et installation

Ouvrez votre navigateur web et visitez le nom de domaine de votre installation Odoo (c’est-à-dire : https://odoo.howtoforge.local/).

Au début, vous devrez migrer la base de données pour Odoo et créer un nouvel utilisateur administrateur.

Le mot de passe maître ici est le ‘admin_passwd‘ que vous venez d’ajouter dans le fichier ‘/etc/odoo.conf‘.

Saisissez le nouveau nom de base de données qui sera automatiquement créé et saisissez les détails du nouvel utilisateur admin et le mot de passe pour votre installation Odoo. De plus, vous pouvez également cocher la case des données de démonstration pour ajouter des données de démonstration à votre installation.

Cliquez sur ‘Créer une base de données‘ pour commencer l’installation d’Odoo.

installer odoo

Après l’installation d’Odoo, vous serez redirigé vers la page de connexion Odoo. Saisissez l’email admin et le mot de passe pour votre Odoo et cliquez sur ‘Connexion‘.

connexion odoo

Vous devriez maintenant obtenir le tableau de bord utilisateur Odoo.

tableau de bord odoo

Conclusion

Félicitations ! Vous avez maintenant installé l’ERP open source Odoo sur un serveur Ubuntu 24.04. Vous avez également appris l’installation de base du serveur de base de données PostgreSQL et du serveur web Nginx qui est configuré en tant que proxy inverse.

À ce stade, vous avez entièrement sécurisé l’installation d’Odoo sur votre serveur Ubuntu. Vous pouvez maintenant commencer à ajouter des plugins/add-ons supplémentaires qui conviennent à votre entreprise.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.