Installation von Odoo 15 auf einen Linux Ubuntu 20.04 Server

In dieser Anleitung installieren wir die Open-Source ERP-Software-Lösung Odoo in der aktuellsten Version (15) auf einen Linux Ubuntu Server. Für dieses Tutorial wird die Ubuntu 20.04 Distribution verwendet. Die Installationsanleitung habe ich in einfache Schritte aufgeteilt und sie funktioniert sowohl auf virtuellen als auch physischen Hostsysteme. 

Wir installieren zuerst alle notwendigen Abhängigkeiten und anschließend die Software selbst. Es existieren verschiedene Installationsmöglichkeiten für die Odoo-Business-Software. Je nach Anwendungsgrund und vorhandener IT-Infrastruktur bieten sich verschiedene Lösungen an.

So kann die ERP-Software direkt auf einem Linux-Host installiert werden, wie in dieser Installationsanleitung hier, oder als Container in einer Docker Umgebung. Wir installieren Odoo klassischerweise auf einem Linux-Ubuntu-Server. Implementieren eine Datenbank und erstellen eine virtuelle Python-Umgebung, die erforderlich für den Betrieb ist. 

Bevor wir mit der Installation von Odoo beginnen, möchte ich vorerst erklären, wofür die modulare Software eingesetzt werden kann und einige Empfehlungen für die Anforderungen an die Hardware aussprechen.

Inhaltsverzeichnis: Odoo-ERP-Software auf Linux Ubuntu 20.04 installieren (Tutorial)

Odoo auf Linux Ubuntu installieren Tutorial

Was ist Odoo und wer steckt hinter der Entwicklung?

Bei der Software Odoo handelt es sich um eine ERP-Lösung mit einem dualen Lizenzmodell. Odoo wird von vielen Unternehmen und Organisationen für die Verwaltung von Geschäftsanwendungen verwendet. Dazu zählt die Finanzbuchhaltung, Webseiten und E-Commerce (Shop-Systeme), Lagerverwaltung, Projektmanagement und Customer-Relationship-Management und noch vieles mehr.

Mittlerweile sind zahlreiche Module und Anwendungen für Odoo verfügbar, welche vom Kleinunternehmer bis hin zum großen Konzern, die Verwaltung und Steuerung von unterschiedlichen Geschäftsprozessen ermöglicht.

Einer der größten Vorteile von einem selbst-gehosteten Server mit installiertem Odoo ist die Skalierbarkeit. Wächst das Unternehmen, kann die Software den eigenen Ansprüchen nach mit vielen Anwendungen erweitert werden. Installieren wir Odoo auf eine virtuelle Maschine, können wir mit Leichtigkeit Cluster für die Ausfallsicherheit implementieren und Backups lassen sich komfortabel automatisieren.

Welche Hardwareanforderungen hat Odoo?

Minimalanforderung an die Hardware:

  • Prozessor mit einer 64-Bit-Architektur und mindestens 6 Kerne
  • 8 GB Arbeitsspeicher

Empfohlene Hardwareanforderung:

  • Prozessor mit einer 64-Bit-Architektur und 8 Kerne
  • 16 GB Arbeitsspeicher

Hinweis: Die Hardwareanforderungen wachsen mit der Anzahl der täglich gleichzeitigen Benutzer von Odoo. Bei großen Unternehmen mit über 100 Mitarbeiter ist es ratsam, die Datenbank auf einen eigenen Server zu installieren. Erfahrungsgemäß wird dann erheblich mehr Prozessorleistung und Arbeitsspeicher benötigt, um einen einwandfreien und flüssigen Betrieb zu gewährleisten. Darauf gehe ich nach der Grundinstallation von Odoo am Ende dieser Installationsanleitung noch einmal etwas genauer drauf ein.

Odoo Installationsanleitung: Abhängigkeiten installieren und Benutzerkonto erstellen (Schritt 1.)

Beginnen wir mit der Installation eines Odoo-Servers für Linux Ubuntu 20.04. Bringe die Paketquellen von deinem Ubuntu-Host auf den neusten Stand mit folgendem Befehl:

sudo apt update

Abhängigkeiten für Odoo installieren:

Installiere zuerst die Abhängigkeiten (Python, Git, Pip und Node.js), die für die Installation und den Betrieb von Odoo erforderlich sind:

sudo apt install git python3-pip build-essential wget python3-dev python3-venv \ python3-wheel libfreetype6-dev libxml2-dev libzip-dev libldap2-dev libsasl2-dev \ python3-setuptools node-less libjpeg-dev zlib1g-dev libpq-dev \ libxslt1-dev libldap2-dev libtiff5-dev libjpeg8-dev libopenjp2-7-dev \ liblcms2-dev libwebp-dev libharfbuzz-dev libfribidi-dev libxcb1-dev

Benutzerkonto für Odoo erstellen:

Jetzt erstellen wir einen neuen Benutzer, da Ausführungen von Odoo als Root-Benutzer ein gravierendes Sicherheitsrisiko darstellen würden. Verwende folgenden Befehl, um einen neuen Benutzer anzulegen und eine Gruppe zu erstellen:

sudo useradd -m -d /opt/odoo15 -U -r -s /bin/bash odoo15

Für die Erstellung des Benutzers kann ein beliebiger Name verwendet werden. Der PostgreSQL-Benutzer muss jedoch den identischen Namen bekommen.

Installation und Konfiguration der Datenbank (PostgreSQL) für Odoo-ERP (Schritt 2.)

Datenbank für Odoo 15 installieren

Für die Odoo-Software wird eine PostgreSQL-Datenbank verwendet. Da PostgreSQL bereits im Standard-Repository von Ubuntu vorhanden ist, kann die Datenbank relativ leicht installiert werden:

sudo apt install postgresql

PostgreSQL-Benutzer erstellen:

Nach der Installation der PostgreSQL-Datenbank erstellen wir einen Benutzer mit demselben Namen, den wir bereits für unser Odoo-Benutzerkonto erstellt haben:

sudo su - postgres -c "createuser -s odoo15"

Installation von wkhtmltopdf (Schritt 3.)

Mit wkhtmltopdf installieren wir eine Reihe von Open-Source Befehlszeilen-Werkzeuge, die zum Rendern von HTML-Inhalten in PDF und verschiedene Bildformate verantwortlich sind. Diese dienen unter anderem dazu, HTML-Dokumente über Odoo als PDF-Datei ausdrucken zu können. Wir installieren die aktuelle Version von Github mit folgendem Befehl:

sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb

Nachdem die Datei erfolgreich heruntergeladen wurde, installieren wir das Paket mit diesem Befehl:

sudo apt install ./wkhtmltox_0.12.5-1.bionic_amd64.deb

Odoo Version 15 auf einem Ubuntu Server installieren und konfigurieren (Schritt 4.)

Wir installieren Odoo in eine virtuelle Python-Umgebung. Wechsel dafür zunächst zum neu erstellten Odoo-Benutzer mit diesem Befehl:

sudo su - odoo15

Als Nächstes wird der Quellcode von Github für die Installation von Odoo mit folgendem Befehl geklont:

git clone https://www.github.com/odoo/odoo --depth 1 --branch 15.0 /opt/odoo15/odoo

Erstelle eine virtuelle Python-Umgebung für Odoo:

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

Aktiviere die soeben erstelle virtuelle Python-Umgebung mit diesem Befehl:

source odoo-venv/bin/activate

Die Abhängigkeiten von Odoo sind in der Datei „Requirements.txt“ vorzufinden. Installiere nun den Paketmanager „Pip3“, dieser ist notwendig und erweitert unsere Python-Umgebung mit Funktionen, die nicht in der Python-Standardbibliothek enthalten sind:

pip3 install wheel
pip3 install -r odoo/requirements.txt

Hast du diesen Schritt erledigt, deaktivieren wir zunächst unsere Umgebung:

deactivate

Anschließend erstellen wir ein neues Verzeichnis für Third-Party-Addons:

mkdir /opt/odoo15/odoo-custom-addons

Dieses Verzeichnis wird als Zielverzeichnis für installierte Odoo-Addons verwendet.

Verlasse die virtuelle Python-Umgebung und erstelle eine Konfigurations-Datei für Odoo:

exit
sudo nano /etc/odoo15.conf

Kopiere die Konfiguration und füge sie in die Datei mit dem Nano-Editor ein:

[options]

; This is the password that allows database operations:

admin_passwd = mein_admin_passwort

db_host = False

db_port = False

db_user = odoo15

db_password = False

addons_path = /opt/odoo15/odoo/addons,/opt/odoo15/odoo-custom-addons

Wähle ein sicheres Passwort und ergänze den Eintrag „mein_admin_passwort“. Speichere die Änderungen ab (STRG+S) und verlasse die Konfigurationsdatei wieder (STRG+X).

Erstelle die Odoo15.service Datei wie angegeben. Diese beinhaltet notwendige Informationen über den Service:

sudo nano /etc/systemd/system/odoo15.service

Kopiere den folgenden Inhalt und füge ihn mit dem Nano-Editor in die Service-Datei ein:

[Unit]

Description=Odoo15

Requires=postgresql.service

After=network.target postgresql.service

[Service]

Type=simple

SyslogIdentifier=odoo15

PermissionsStartOnly=true

User=odoo15

Group=odoo15

ExecStart=/opt/odoo15/odoo-venv/bin/python3 /opt/odoo15/odoo/odoo-bin -c /etc/odoo15.conf

StandardOutput=journal+console

[Install]

WantedBy=multi-user.target

Speichere die Eingaben (STRG+S) und verlasse den Nano-Editor wieder (STRG+X). Damit die Datei eingelesen wird, starten wir den Dienst „daemon“ mit folgendem Befehl neu:

sudo systemctl daemon-reload

Jetzt ist es an der Zeit, die Odoo Software zu starten und den automatischen Start bei einem System-Reboot zu aktivieren:

sudo systemctl enable --now odoo15

Überprüfe, ob der Odoo-Service läuft:

sudo systemctl status odoo15

Die Installation von Odoo auf einen Linux-Ubuntu-Server ist jetzt abgeschlossen. Im nächsten Abschnitt überprüfen wir, ob unser Odoo-Server erreichbar ist 

Odoo wurde installiert: Web-Oberfläche über die IP-Adresse aufrufen

Wenn alles erfolgreich funktioniert hat und der Odoo-Service auf deinem Ubuntu-Server läuft, kannst du die Web-Oberfläche (Dashboard) von Odoo über die IP-Adresse von deinem Server gefolgt vom Port 8069 aufrufen. Begebe dich an einem beliebigen Client im selben Netzwerk (LAN) und gebe die IP-Adresse in deinen Browser, wie im Beispiel beschrieben ein:

http://192.168.178.100:8069

Bedenke, dass du die IP-Adresse von deinem Server verwenden musst. Über das Terminal (Shell) kann die aktuelle IP-Adresse mit dem Befehl „ip a“ angezeigt werden. Sollte kein Zugriff möglich sein bzw. keine Seite angezeigt werden, füge den Port zu der UFW-Firewall hinzu und erlaube einen Zugriff.

Empfehlungen für den erfolgreichen Betrieb eines Odoo-Servers (Sicherheits- und Leistungstipps)

Ohne weitere Einstellungen und Konfigurationen wird der Datenverkehr unverschlüsselt über HTTP übertragen. Für Testzwecke und kleinere Projekte spricht nichts gegen eine Verwendung von Odoo ohne weitere Konfigurationen. Um die Sicherheit zu erhöhen, empfehle ich die Verwendung eines Reverse-Proxys z.B. von Nginx und die Installation eines SSL-Zertifikats, um den Datenverkehr zu verschlüsseln.

Anleitungen dafür findest du auf meinem Blog:

Die Verwendung eines Reverse-Proxys bringt eine ganze Menge Vorteile für Odoo mit sich. Funktionen wie Load Balancing, Caching, Komprimierungen und SSL-Termination sind ideal für den Betrieb eines performanten Servers.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert