Installation Odoo · 7 min read · Sep 29, 2025

Installer Odoo sur CentOS avec Nginx

Odoo est un système ERP et CRM open-source utilisé pour gérer les besoins fondamentaux de l’entreprise, y compris la gestion des matériaux et des entrepôts, les ressources humaines, la finance, la comptabilité, les ventes, l’inventaire et de nombreuses autres fonctionnalités d’entreprise. Il est construit en utilisant Python et utilise PostgreSQL comme base de données. La dernière version d’Odoo 14 dispose de fonctionnalités pratiques, y compris un nouveau constructeur de site web, de nouveaux outils d’intelligence d’affaires, de nouveaux menus d’inventaire et de MRP améliorés, et plus encore.

Ce tutoriel vous montrera comment installer Odoo 14 avec Nginx sur CentOS 8.

Prérequis

  • Un serveur exécutant CentOS 8.
  • Un nom de domaine valide pointé vers l’IP de votre serveur.
  • Un mot de passe root configuré sur le serveur.

Commencer

Avant de commencer, vous devrez installer Python, wkhtmltopdf et d’autres dépendances requises sur votre système. Exécutez la commande suivante pour les installer toutes :

dnf install python3 redhat-rpm-config libxslt-devel bzip2-devel openldap-devel python3-devel git gcc libjpeg-devel freetype-devel curl unzip -y  
dnf install https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox-0.12.5-1.centos8.x86_64.rpm

Une fois toutes les dépendances installées, vous pouvez passer à l’étape suivante.

Installer et configurer PostgreSQL

Odoo utilise PostgreSQL comme backend de base de données. Vous devrez donc l’installer sur votre système. Exécutez la commande suivante pour installer PostgreSQL :

dnf install postgresql postgresql-server postgresql-contrib -y

Une fois PostgreSQL installé, initialisez la base de données avec la commande suivante :

postgresql-setup initdb

Vous devriez voir la sortie suivante :

WARNING: using obsoleted argument syntax, try --help
WARNING: arguments transformed to: postgresql-setup --initdb --unit postgresql
 * Initializing database in '/var/lib/pgsql/data'
 * Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log

Ensuite, démarrez le service PostgreSQL et activez-le pour qu’il démarre au redémarrage du système :

systemctl start postgresql  
systemctl enable postgresql

Ensuite, créez un nouvel utilisateur pour Odoo avec la commande suivante :

su - postgres -c "createuser -s odoo14"

Une fois que vous avez terminé, vous pouvez passer à l’étape suivante.

Installer Odoo 14

Il est recommandé d’installer et d’exécuter Odoo en tant qu’utilisateur autonome. Vous pouvez créer un nouvel utilisateur pour Odoo avec la commande suivante :

useradd -m -U -r -d /opt/odoo14 -s /bin/bash odoo14

Remarque : L’utilisateur Odoo et l’utilisateur PostgreSQL doivent être les mêmes.

Ensuite, passez à l’utilisateur Odoo 14 et téléchargez la dernière version d’Odoo 14 avec la commande suivante :

su - odoo14  
git clone https://www.github.com/odoo/odoo --depth 1 --branch 14.0 /opt/odoo14/odoo14

Une fois le téléchargement terminé, changez de répertoire vers odoo14 et créez un nouvel environnement virtuel Python avec la commande suivante :

cd /opt/odoo14  
python3 -m venv odooenv

Ensuite, activez l’environnement virtuel avec la commande suivante :

source odooenv/bin/activate

Ensuite, installez d’autres dépendances Python avec la commande suivante :

(odooenv) [odoo14@centos8 ~]$ pip3 install wheel  
(odooenv) [odoo14@centos8 ~]$ pip3 install -r odoo14/requirements.txt

Ensuite, désactivez l’environnement virtuel et quittez l’utilisateur Odoo avec la commande suivante :

(odooenv) [odoo14@centos8 ~]$ deactivate  
exit

Une fois que vous avez terminé, vous pouvez passer à l’étape suivante.

Configurer Odoo 14

Ensuite, vous devrez créer un répertoire pour stocker les addons d’Odoo 14. Vous pouvez le créer avec la commande suivante :

mkdir /opt/odoo14/odoo14-custom-addons

Ensuite, définissez la propriété appropriée pour le répertoire des addons :

chown -R odoo14:odoo14 /opt/odoo14/odoo14-custom-addons

Ensuite, créez un répertoire et un fichier de log pour Odoo 14 et définissez la propriété appropriée :

mkdir /var/log/odoo14  
touch /var/log/odoo14/odoo14.log  
chown -R odoo14: /var/log/odoo14/

Ensuite, créez un fichier de configuration Odoo 14 :

nano /etc/odoo14.conf

Ajoutez les lignes suivantes :

[options]
; Ceci est le mot de passe qui permet les opérations sur la base de données :
admin_passwd = your_master_password
db_host = False
db_port = False
db_user = odoo14
db_password = False
xmlrpc_port = 8069
; longpolling_port = 8072
logfile = /var/log/odoo14/odoo14.log
logrotate = True
addons_path = /opt/odoo14/odoo14/addons,/opt/odoo14/odoo14-custom-addons

Enregistrez et fermez le fichier lorsque vous avez terminé.

Créer un fichier d’unité Systemd pour Odoo 14

Ensuite, vous devrez créer un fichier de service systemd pour gérer le service Odoo 14. Vous pouvez le créer avec la commande suivante :

nano /etc/systemd/system/odoo14.service

Ajoutez les lignes suivantes :

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

Enregistrez et fermez le fichier, puis rechargez le démon systemd avec la commande suivante :

systemctl daemon-reload

Ensuite, démarrez le service Odoo 14 et activez-le pour qu’il démarre au redémarrage du système avec la commande suivante :

systemctl start odoo14  
systemctl enable odoo14

Vous pouvez maintenant vérifier l’état du service Odoo 14 avec la commande suivante :

systemctl status odoo14

Vous devriez obtenir la sortie suivante :

? odoo14.service - Odoo14
   Loaded: loaded (/etc/systemd/system/odoo14.service; disabled; vendor preset: disabled)
   Active: active (running) since Sat 2021-05-01 06:29:56 EDT; 5s ago
 Main PID: 26505 (python3)
    Tasks: 4 (limit: 25014)
   Memory: 91.8M
   CGroup: /system.slice/odoo14.service
           ??26505 /opt/odoo14/odooenv/bin/python3 /opt/odoo14/odoo14/odoo-bin -c /etc/odoo14.conf

May 01 06:29:56 centos8 systemd[1]: Started Odoo14.

Une fois que vous avez terminé, vous pouvez passer à l’étape suivante.

Installer et configurer Nginx pour Odoo 14

À ce stade, Odoo 14 est installé et en cours d’exécution. Maintenant, il est recommandé de configurer Nginx comme proxy inverse pour Odoo.

Tout d’abord, installez le package Nginx avec la commande suivante :

dnf install nginx -y

Une fois Nginx installé, créez un nouveau fichier de configuration de l’hôte virtuel Nginx avec la commande suivante :

nano /etc/nginx/conf.d/odoo14.conf

Ajoutez les lignes suivantes :

upstream odoo {
 server 127.0.0.1:8069;
}

upstream odoochat {
 server 127.0.0.1:8072;
}

server {
    listen 80;
    server_name odoo.example.com;

    proxy_read_timeout 720s;
    proxy_connect_timeout 720s;
    proxy_send_timeout 720s;

    # Proxy headers
    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;

    # log files
    access_log /var/log/nginx/odoo.access.log;
    error_log /var/log/nginx/odoo.error.log;

    # Handle longpoll requests
    location /longpolling {
        proxy_pass http://odoochat;
    }

    # Handle / requests
    location / {
       proxy_redirect off;
       proxy_pass http://odoo;
    }

    # Cache static files
    location ~* /web/static/ {
        proxy_cache_valid 200 90m;
        proxy_buffering on;
        expires 864000;
        proxy_pass http://odoo;
    }

    # Gzip
    gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
    gzip on;
}

Enregistrez et fermez le fichier, puis vérifiez la syntaxe de Nginx pour toute erreur avec la commande suivante :

ginx -t

Vous devriez obtenir la sortie suivante :

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Ensuite, démarrez le service Nginx et activez-le pour qu’il démarre au redémarrage du système :

systemctl start nginx  
systemctl enable nginx

Vous pouvez également vérifier Nginx avec la commande suivante :

systemctl status nginx

Vous devriez obtenir la sortie suivante :

? nginx.service - Le serveur HTTP et proxy inverse nginx
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
   Active: active (running) since Sat 2021-05-01 06:31:19 EDT; 3s ago
  Process: 26627 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
  Process: 26625 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
  Process: 26623 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
 Main PID: 26628 (nginx)
    Tasks: 3 (limit: 25014)
   Memory: 5.3M
   CGroup: /system.slice/nginx.service
           ??26628 nginx: master process /usr/sbin/nginx
           ??26629 nginx: worker process
           ??26630 nginx: worker process

May 01 06:31:19 centos8 systemd[1]: Starting The nginx HTTP and reverse proxy server...
May 01 06:31:19 centos8 nginx[26625]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
May 01 06:31:19 centos8 nginx[26625]: nginx: configuration file /etc/nginx/nginx.conf test is successful
May 01 06:31:19 centos8 systemd[1]: Started The nginx HTTP and reverse proxy server.

Ensuite, éditez le fichier de configuration Odoo 14 et activez le mode proxy :

nano /etc/odoo14.conf

Ajoutez la ligne suivante :

proxy_mode = True

Enregistrez et fermez le fichier, puis redémarrez le service Odoo 14 pour appliquer les modifications :

systemctl restart odoo14

Configurer le pare-feu

Ensuite, vous devrez autoriser le port 80 à travers le pare-feu. Vous pouvez le faire avec la commande suivante :

firewall-cmd --permanent --add-service=http

Ensuite, rechargez le pare-feu pour appliquer les modifications :

firewall-cmd --reload

Une fois que vous avez terminé, vous pouvez passer à l’étape suivante.

Accéder au tableau de bord Odoo 14

Maintenant, ouvrez votre navigateur web et accédez à l’interface web d’Odoo 14 en utilisant l’URL http://odoo.example.com. Vous serez redirigé vers la page suivante :

Fournissez votre mot de passe maître Odoo, la base de données et cliquez sur le bouton Créer base de données. Vous devriez voir le tableau de bord Odoo 14 sur la page suivante :

Conclusion

Félicitations ! vous avez réussi à installer Odoo 14 ERP avec Nginx sur CentOS 8. Vous pouvez maintenant mettre en œuvre Odoo dans votre environnement de production et augmenter la productivité.

Share: X/Twitter LinkedIn

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

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