Manuelle Installation ohne Docker – mit MariaDB, Redis, Python, Node.js, Bench, Nginx und Supervisor.
Stand 16.09.2026Ubuntu 26.04.1 LTSERPNext / Frappe v16Bare Metal
BrowserHTTPS · 443
NginxReverse Proxy · Static Files
Frappe WebGunicorn · Python
MariaDBERP-Daten
WorkersQueue · Scheduler
RedisCache · Queue
Socket.IONode.js
SupervisorProzessüberwachung
ZIEL DIESES SKRIPTS
Du installierst ERPNext v16 vollständig ohne Container. Dabei lernst du nicht nur die Befehle, sondern auch, welche Aufgabe MariaDB, Redis, Python, Node.js, Bench, Nginx und Supervisor übernehmen.
OFFIZIELLE WARNUNG
Frappe empfiehlt für neue Produktionsinstallationen Docker. Bare Metal ist besonders für Lernen, Labore und bewusst selbstverwaltete Umgebungen interessant.
01 · Architektur
Was Bare Metal hier bedeutet
Bei Docker liegen Anwendung und Abhängigkeiten in Containern. Bei Bare Metal installierst und pflegst du alle Komponenten direkt auf dem Ubuntu-Server.
Komponente
Aufgabe
MariaDB
Speichert Geschäftsdaten, Benutzer, Belege und Konfiguration.
Redis
Cache und Warteschlangen für Hintergrundjobs und Echtzeitfunktionen.
Python 3.14
Führt Frappe und die serverseitige ERPNext-Logik aus.
Node.js 24 + Yarn
Bauen Frontend-Assets und unterstützen Echtzeitfunktionen.
Bench
Verwaltet Apps, Sites, Updates, Backups und Produktionskonfiguration.
Nginx
Reverse Proxy, statische Dateien und HTTPS.
Supervisor
Hält Webprozess, Worker, Scheduler und Redis-Prozesse am Laufen.
FISI-BEZUG
Bare Metal macht die einzelnen Schichten besonders sichtbar: Netzwerk → Reverse Proxy → Anwendung → Hintergrunddienste → Datenbank.
02 · Aktueller Stand
Welche Versionen Frappe v16 erwartet
Die aktuellen Frappe-Unterlagen nennen für v16/develop konkrete Zielversionen. Prüfe diese Werte nach der Installation.
Abhängigkeit
Frappe v16
Prüfbefehl
MariaDB
11.8
mariadb --version
Python
3.14
uv python list
Node.js
24
node -v
Redis / Valkey
6+
redis-server --version
Yarn
1.22+
yarn -v
wkhtmltopdf
0.12.6 patched Qt
wkhtmltopdf --version
UbuntuHostsystem
→
MariaDB + RedisDatenbank · Cache · Queue
→
Python + NodeBackend · Assets
→
BenchFrappe · ERPNext
WICHTIG
Wenn MariaDB nach der Paketinstallation deutlich älter als die von Frappe erwartete Version ist, nicht einfach fortfahren. Dann passende MariaDB-Paketquelle verwenden oder auf die empfohlene Docker-Variante wechseln.
03 · Voraussetzungen
Server, DNS und Ressourcen vorbereiten
Bereich
Empfehlung
CPU
2–4 vCPU
RAM
Mindestens 8 GB für eine komfortable Einzelserver-Installation
Datenträger
SSD, mindestens ca. 50 GB mit Reserve für Backups und Logs
DNS
erp.firma.de zeigt auf die Server-IP
Netzwerk
80/TCP und 443/TCP erreichbar; SSH-Verbindung gesichert
Vor Beginn festlegen
Site-Name: erp.firma.de
Linux-Servicebenutzer: frappe
Bench-Pfad: /home/frappe/frappe-bench
ERPNext-Zweig: version-16
Starkes MariaDB-root-Passwort und separates ERPNext-Administratorpasswort
04 · Ubuntu vorbereiten
System aktualisieren und Basiswerkzeuge installieren
sudo systemctl restart mariadb
sudo mariadb -e "SHOW VARIABLES LIKE 'character_set_server'; SHOW VARIABLES LIKE 'collation_server';"
07 · PDF-Engine
wkhtmltopdf mit patched Qt installieren
ERPNext verwendet wkhtmltopdf für bestimmte PDF-Ausgaben. Frappe nennt weiterhin Version 0.12.6 mit gepatchtem Qt.
sudo apt install -y xvfb libfontconfig
ACHTUNG
Bei sehr neuen Ubuntu-Versionen kann wkhtmltopdf der empfindlichste Bare-Metal-Baustein sein. Das passende 0.12.6-Paket für Architektur und Distribution von der offiziellen Downloadseite verwenden.
Node.js, Python, Bench und ERPNext werden als Benutzer frappe installiert. Damit landen nvm, uv und die Bench-Dateien im Home-Verzeichnis dieses Benutzers.
Bench ist nicht ERPNext. Bench ist das Verwaltungswerkzeug, das Frappe, ERPNext, Sites, Updates, Backups und Produktionskonfiguration steuert.
11 · Frappe-Bench
Bench für Frappe v16 initialisieren
cd ~
bench init --frappe-branch version-16 frappe-bench
cd ~/frappe-bench
Pfad
Bedeutung
apps/
Frappe und später ERPNext als Git-Repositories.
env/
Python-Umgebung der Bench.
sites/
Sites, Konfigurationen und öffentliche/private Dateien.
config/
Redis-, Nginx- und Supervisor-Konfigurationen.
logs/
Logs von Webprozess, Workern, Scheduler und Bench.
12 · ERPNext-App
ERPNext v16 zur Bench hinzufügen
cd ~/frappe-bench
bench get-app --branch version-16 erpnext https://github.com/frappe/erpnext
bench version
13 · Site erstellen
Datenbank und ERPNext-Site anlegen
cd ~/frappe-bench
bench new-site erp.firma.de
bench --site erp.firma.de install-app erpnext
bench use erp.firma.de
bench --site erp.firma.de list-apps
PASSWÖRTER
Beim Anlegen der Site wird das MariaDB-root-Passwort benötigt. Das ERPNext-Administratorpasswort ist später das Login-Passwort für den Benutzer Administrator.
Das bei bench new-site vergebene Administratorpasswort
22 · Betrieb
Status und wichtige Dienste prüfen
sudo supervisorctl status
sudo systemctl status nginx --no-pager
sudo systemctl status mariadb --no-pager
sudo nginx -t
cd ~/frappe-bench
bench doctor
bench version
cd ~/frappe-bench
bench --site erp.firma.de backup --with-files --compress
Backup-Verzeichnis
ls -lh ~/frappe-bench/sites/erp.firma.de/private/backups/
Backup-Zeitplan über Bench
bench setup backups
3-2-1-PRINZIP
Produktive Sicherungen nicht nur auf demselben Server belassen. Zusätzliche Kopien auf einem getrennten System halten und Wiederherstellungen testen.
24 · Updates
ERPNext und Frappe aktualisieren
cd ~/frappe-bench
bench --site erp.firma.de backup --with-files --compress
bench version
bench update
bench version
sudo supervisorctl status
sudo nginx -t
BRANCH BEACHTEN
Frappe und ERPNext sind auf version-16 gepinnt. Ein Hauptversionswechsel ist keine normale Kleinaktualisierung und sollte separat geplant werden.
Die Anleitung basiert auf dem zuvor erstellten Bare-Metal-Lernskript. Für die dort enthaltenen Versions- und Installationsangaben wurden die offiziellen Frappe-, ERPNext- und Ubuntu-Unterlagen herangezogen.