Odoo Installation · 6 min read · Sep 29, 2025

Odoo auf CentOS mit Nginx installieren

Odoo ist ein Open-Source-ERP- und CRM-System, das verwendet wird, um die grundlegenden Bedürfnisse des Unternehmens zu verwalten, einschließlich Material- und Lagerverwaltung, Personalwesen, Finanzen, Buchhaltung, Vertrieb, Inventar und viele andere Unternehmensfunktionen. Es ist in Python geschrieben und verwendet PostgreSQL als Datenbank. Die neueste Odoo 14-Version bietet praktische Funktionen, darunter einen neuen Website-Builder, neue Business-Intelligence-Tools, neue und verbesserte Menüs für Inventar und MRP und mehr.

Dieses Tutorial zeigt Ihnen, wie Sie Odoo 14 mit Nginx auf CentOS 8 installieren.

Voraussetzungen

  • Ein Server, der CentOS 8 ausführt.
  • Ein gültiger Domainname, der auf Ihre Server-IP zeigt.
  • Ein Root-Passwort, das auf dem Server konfiguriert ist.

Erste Schritte

Bevor Sie beginnen, müssen Sie Python, wkhtmltopdf und andere erforderliche Abhängigkeiten auf Ihrem System installieren. Führen Sie den folgenden Befehl aus, um alle zu installieren:

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

Sobald alle Abhängigkeiten installiert sind, können Sie mit dem nächsten Schritt fortfahren.

PostgreSQL installieren und konfigurieren

Odoo verwendet PostgreSQL als Datenbank-Backend. Daher müssen Sie es auf Ihrem System installieren. Führen Sie den folgenden Befehl aus, um PostgreSQL zu installieren:

dnf install postgresql postgresql-server postgresql-contrib -y

Sobald PostgreSQL installiert ist, initialisieren Sie die Datenbank mit dem folgenden Befehl:

postgresql-setup initdb

Sie sollten die folgende Ausgabe sehen:

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

Als Nächstes starten Sie den PostgreSQL-Dienst und aktivieren ihn, damit er beim Systemneustart gestartet wird:

systemctl start postgresql  
systemctl enable postgresql

Erstellen Sie als Nächstes einen neuen Benutzer für Odoo mit dem folgenden Befehl:

su - postgres -c "createuser -s odoo14"

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Odoo 14 installieren

Es wird empfohlen, Odoo als eigenständigen Benutzer zu installieren und auszuführen. Sie können einen neuen Benutzer für Odoo mit dem folgenden Befehl erstellen:

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

Hinweis: Der Odoo-Benutzer und der PostgreSQL-Benutzer müssen identisch sein.

Wechseln Sie als Nächstes zum Benutzer Odoo 14 und laden Sie die neueste Version von Odoo 14 mit dem folgenden Befehl herunter:

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

Sobald der Download abgeschlossen ist, wechseln Sie in das Verzeichnis odoo14 und erstellen Sie eine neue Python-virtuelle Umgebung mit dem folgenden Befehl:

cd /opt/odoo14  
python3 -m venv odooenv

Aktivieren Sie als Nächstes die virtuelle Umgebung mit dem folgenden Befehl:

source odooenv/bin/activate

Installieren Sie als Nächstes andere Python-Abhängigkeiten mit dem folgenden Befehl:

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

Deaktivieren Sie als Nächstes die virtuelle Umgebung und beenden Sie den Odoo-Benutzer mit dem folgenden Befehl:

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

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Odoo 14 konfigurieren

Als Nächstes müssen Sie ein Verzeichnis erstellen, um die Odoo 14-Addons zu speichern. Sie können es mit dem folgenden Befehl erstellen:

mkdir /opt/odoo14/odoo14-custom-addons

Setzen Sie als Nächstes die richtigen Berechtigungen für das Addons-Verzeichnis:

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

Erstellen Sie als Nächstes ein Protokollverzeichnis und eine Protokolldatei für Odoo 14 und setzen Sie die richtigen Berechtigungen:

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

Erstellen Sie als Nächstes eine Odoo 14-Konfigurationsdatei:

nano /etc/odoo14.conf

Fügen Sie die folgenden Zeilen hinzu:

[options]
; Dies ist das Passwort, das Datenbankoperationen erlaubt:
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

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Erstellen Sie eine Systemd-Einheitendatei für Odoo 14

Als Nächstes müssen Sie eine systemd-Dienstdatei erstellen, um den Odoo 14-Dienst zu verwalten. Sie können dies mit dem folgenden Befehl tun:

nano /etc/systemd/system/odoo14.service

Fügen Sie die folgenden Zeilen hinzu:

[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

Speichern und schließen Sie die Datei, und laden Sie dann den systemd-Daemon mit dem folgenden Befehl neu:

systemctl daemon-reload

Starten Sie als Nächstes den Odoo 14-Dienst und aktivieren Sie ihn, damit er beim Systemneustart gestartet wird, mit dem folgenden Befehl:

systemctl start odoo14  
systemctl enable odoo14

Sie können jetzt den Status des Odoo 14-Dienstes mit dem folgenden Befehl überprüfen:

systemctl status odoo14

Sie sollten die folgende Ausgabe erhalten:

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

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Nginx für Odoo 14 installieren und konfigurieren

An diesem Punkt ist Odoo 14 installiert und läuft. Jetzt wird empfohlen, Nginx als Reverse-Proxy für Odoo zu konfigurieren.

Zuerst installieren Sie das Nginx-Paket mit dem folgenden Befehl:

dnf install nginx -y

Sobald Nginx installiert ist, erstellen Sie eine neue Nginx-virtuelle Host-Konfigurationsdatei mit dem folgenden Befehl:

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

Fügen Sie die folgenden Zeilen hinzu:

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-Header
    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;

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

    # Langpoll-Anfragen behandeln
    location /longpolling {
        proxy_pass http://odoochat;
    }

    # / Anfragen behandeln
    location / {
       proxy_redirect off;
       proxy_pass http://odoo;
    }

    # Statische Dateien cachen
    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;
}

Speichern und schließen Sie die Datei und überprüfen Sie dann Nginx auf Syntaxfehler mit dem folgenden Befehl:

ginx -t

Sie sollten die folgende Ausgabe erhalten:

nginx: die Konfigurationsdatei /etc/nginx/nginx.conf Syntax ist ok
nginx: Konfigurationsdatei /etc/nginx/nginx.conf Test war erfolgreich

Starten Sie als Nächstes den Nginx-Dienst und aktivieren Sie ihn, damit er beim Systemneustart gestartet wird:

systemctl start nginx  
systemctl enable nginx

Sie können Nginx auch mit dem folgenden Befehl überprüfen:

systemctl status nginx

Sie sollten die folgende Ausgabe erhalten:

? nginx.service - Der nginx HTTP- und Reverse-Proxy-Server
   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 Der nginx HTTP- und Reverse-Proxy-Server...
May 01 06:31:19 centos8 nginx[26625]: nginx: die Konfigurationsdatei /etc/nginx/nginx.conf Syntax ist ok
May 01 06:31:19 centos8 nginx[26625]: nginx: Konfigurationsdatei /etc/nginx/nginx.conf Test war erfolgreich
May 01 06:31:19 centos8 systemd[1]: Started Der nginx HTTP- und Reverse-Proxy-Server.

Bearbeiten Sie als Nächstes die Odoo 14-Konfigurationsdatei und aktivieren Sie den Proxy-Modus:

nano /etc/odoo14.conf

Fügen Sie die folgende Zeile hinzu:

proxy_mode = True

Speichern und schließen Sie die Datei, und starten Sie dann den Odoo 14-Dienst neu, um die Änderungen anzuwenden:

systemctl restart odoo14

Firewall konfigurieren

Als Nächstes müssen Sie den Port 80 durch die Firewall zulassen. Sie können dies mit dem folgenden Befehl tun:

firebase-cmd --permanent --add-service=http

Laden Sie als Nächstes die Firewall neu, um die Änderungen anzuwenden:

firebase-cmd --reload

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Zugriff auf das Odoo 14-Dashboard

Öffnen Sie jetzt Ihren Webbrowser und greifen Sie auf die Odoo 14-Weboberfläche über die URL http://odoo.example.com zu. Sie werden auf die folgende Seite umgeleitet:

Geben Sie Ihr Odoo-Master-Passwort, die Datenbank ein und klicken Sie auf die Schaltfläche Datenbank erstellen. Sie sollten das Odoo 14-Dashboard auf der folgenden Seite sehen:

Fazit

Herzlichen Glückwunsch! Sie haben Odoo 14 ERP erfolgreich mit Nginx auf CentOS 8 installiert. Sie können Odoo jetzt in Ihrer Produktionsumgebung implementieren und die Produktivität steigern.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.