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
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 fontconfigLorsque vous y êtes invité, saisissez y pour confirmer et appuyez sur ENTRÉE pour continuer. L’installation commencera.

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.

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
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
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.debInstallez le paquet Wkhtmltopdf via la commande dpkg ci-dessous.
sudo dpkg -i wkhtmltox_0.12.6.1-3.jammy_amd64.debSi vous obtenez une erreur telle qu’un paquet manquant, corrigez-la via la commande apt suivante.
sudo apt install -f
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/binMaintenant, 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 $PATHEnfin, 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
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
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 postgresqlDans 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.

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 odooSaisissez 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.
psqlExé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.
duMaintenant, saisissez ‘ q‘ pour quitter l’interface en ligne de commande PostgreSQL. Ensuite, tapez ‘exit‘ pour vous déconnecter de 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 postgresAprès vous être connecté, vérifiez en utilisant la requête suivante.
duVous devriez maintenant voir que vous êtes connecté à PostgreSQL en utilisant le rôle ‘odoo‘.

À 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 odooMaintenant, 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-serverVous 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-serverAprè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 venvEnsuite, activez l’environnement virtuel Python ‘venv’ via la commande suivante.
source venv/bin/activateAprè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
Après l’installation des dépendances Python, exécutez la commande suivante pour quitter l’environnement virtuel Python ‘venv’.
deactivateVous 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.confAjoutez 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 = debugEnregistrez 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.confEnsuite, 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/odooPuis, 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/odooExé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.serviceAjoutez 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.targetEnregistrez 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-reloadDémarrez et activez le service ‘odoo-server’ en utilisant la commande suivante.
sudo systemctl start odoo-server
sudo systemctl enable odoo-server
Enfin, vérifiez le service Odoo pour vous assurer que le service est en cours d’exécution.
sudo systemctl status odoo-serverVous devriez recevoir la sortie du service ‘odoo-server‘ en cours d’exécution.

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.confAjoutez 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 = TrueEnregistrez 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-serverEnsuite, 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
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.confAjoutez 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 -tSi 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 nginxMaintenant, 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.

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 enableLorsque 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
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.

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‘.

Vous devriez maintenant obtenir le tableau de bord utilisateur 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.
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.