Please enable JavaScript to view this site.

Installationshandbuch

Navigation: Installationshandbuch > JobRouter-Setup > Manuelle Installation (Linux) > Beispiel: Dienste

Ubuntu und Debian

Scroll Zurück Oben Weiter Mehr

Anleitung zur Installation und Konfiguration der JobRouter-Dienste unter Linux

Bitte beachten Sie: diese Dokumentation basiert auf einer Installation unter Debian 12. Die Download-Pakete für die JobRouter-Dienste finden Sie in unserem Kunden-Portal unter Software-Downloads.

Bitte beachten Sie: Es ist erforderlich die nachfolgenden Befehle mit administrativen Rechten auszuführen. Die nachfolgenden Skripte sollten in einer Bash ausgeführt werden.
 
Sofern Sie Ubuntu Linux verwenden: Führen Sie den Befehl mit ihrem normalen Benutzer-Account aus, indem Sie vor die jeweilige Befehlszeile ein sudo anfügen (im Befehl rot markiert).
Sofern Sie Debian Linux verwenden: Führen Sie den Befehl als root-Benutzer ohne den Befehl sudo aus.

Voraussetzungen

Um die Installation der Dienste unter Debian 12 erfolgreich durchzuführen, sind vorab folgende Pakete zwingend erforderlich:

Grundlegende Werkzeuge:

wget

 Benötigt, um Dateien von einem HTTP/HTTPS-Server herunterzuladen.

 Wird hier verwendet, um die Microsoft-Paketquelle herunterzuladen. 

 

dpkg

 Ein essenzielles Werkzeug zur Installation von .deb-Paketen.

 Wird hier verwendet, um das Paket packages-microsoft-prod.deb zu installieren. 

 

apt

 Das Standard-Paketmanagement-Tool unter Debian, um Software zu installieren und zu aktualisieren. 

Archivierungstools:

unzip

 Zum Entpacken von ZIP-Dateien wie JobActivity.zip, JobConfig.zip, etc.

Paketquellen-Verwaltung:

contrib und non-free Repositories

 Diese müssen aktiviert sein, um proprietäre Software und Pakete wie die Microsoft Core Fonts (ttf-mscorefonts-installer) zu installieren.

Folgender Befehl aktualisiert die Paketlisten und installiert grundlegend benötigte Abhängigkeiten, um JobRouter auf dem Betriebssystem zu betreiben.

Microsoft-Paketquelle hinzufügen

Siehe auch: https://learn.microsoft.com/en-us/dotnet/core/install/linux-debian

Zunächst wird die Microsoft-Paketquelle heruntergeladen und installiert. Dadurch können die benötigten .NET-Pakete installiert werden.

wget https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

sudo dpkg -i packages-microsoft-prod.deb

rm packages-microsoft-prod.deb

 

Erklärung:

owget lädt die Datei herunter.

odpkg -i installiert das Paket.

orm löscht die Datei nach der Installation, um den Speicherplatz freizugeben.

.NET Runtime installieren

Nun aktualisieren wir die Paketliste und installieren die .NET Runtime 8.0, die für die Ausführung der Dienste erforderlich ist.

sudo apt update && apt -y install dotnet-runtime-8.0 unzip

 

Erklärung:

oapt update aktualisiert die Paketquellen und die Liste der verfügbaren Paketversionen.

oapt install dotnet-runtime-8.0 unzip installiert die .NET Runtime 8.0 und das CLI Werkzeug zum entpacken von ZIP Dokumenten.

System-Updates durchführen

Die folgenden Befehle aktualisieren das System.

sudo apt update

sudo apt upgrade

 

Erklärung:

oapt update aktualisiert die Paketquellen und die Liste der verfügbaren Paketversionen. 

oapt upgrade Installiert die neuen Versionen der Pakete, basierend auf den aktuellen Paketlisten.

CIFS-Unterstützung installieren (optional)

Siehe auch: https://linuxize.com/post/how-to-mount-cifs-windows-share-on-linux/

cifs-utils wird für den Zugriff auf geteilte JobRouter-Verzeichnisse benötigt, sofern für diese Windows-Freigaben oder Samba-Shares verwendet werden.

sudo apt install cifs-utils

 

Erklärung:

oapt install installiert CIFS Werkzeuge

Microsoft Fonts nachinstallieren

Siehe auch: https://linuxcapable.com/how-to-install-microsoft-fonts-on-debian-linux/

Für die Dokumentverarbeitung (Rendering und PDF-Erstellung) in JobRouter müssen unter Umständen die Microsoft TrueType Schriftarten (Times New Roman, Arial, Verdana & Co.) nachinstalliert werden.

sudo apt install software-properties-common -y 
sudo apt-add-repository contrib non-free -y 
sudo apt install ttf-mscorefonts-installer

 

Erklärung:

oapt install installiert das software-properties-common Paket wodurch das System einfacher konfiguriert, werden kann, um zusätzliche Software-Quellen (Repositories) hinzuzufügen, die in den Standard-Repositories nicht enthalten sind.

oapt-add-repository: Dieser Befehl wird genutzt, um zusätzliche Software-Repositories hinzuzufügen.

contrib: Pakete, die freie Software sind, aber unfreie Abhängigkeiten haben.

non-free: Pakete, die nicht den Kriterien für freie Software entsprechen (z. B. proprietäre Software, Treiber oder Schriftarten.

oapt install installiert das Paket ttf-mscorefonts-installer, welches die Microsoft-Schriftarten herunterlädt und installiert, sodass man sie auf dem System verwenden kann.

Bitte beachten Sie: werden neben den Standard-Fonts hauseigene oder benutzerdefinierte Fonts benötigt, müssen diese manuell installiert werden.

Verzeichnisse für die .NET-Dienste anlegen

Bitte beachten Sie: sollte neben den Standarddiensten auch JobDocuWare benötigt werden, führen Sie alle folgenden Schritte auch für JobDocuWare aus.

Erstellen Sie Verzeichnisse, in denen die einzelnen Dienste liegen werden.

sudo mkdir -p /opt/JobRouter/{JobActivity,JobConfig,JobRunner,JobServer}

 

Erklärung:

omkdir -p erstellt die Verzeichnisse, falls sie nicht bereits existieren.

.NET-Dienste entpacken

Die Dienste werden entpackt und in die entsprechenden Verzeichnisse verschoben.

sudo unzip JobActivity.zip -d /opt/JobRouter/JobActivity/

sudo unzip JobConfig.zip -d /opt/JobRouter/JobConfig/

sudo unzip JobRunner.zip -d /opt/JobRouter/JobRunner/

sudo unzip JobServer.zip -d /opt/JobRouter/JobServer/

 

Erklärung:

ounzip  entpackt die angegebene ZIP-Datei in das mittels -d angegebene Verzeichnis

Berechtigungen setzen

Um sicherzustellen, dass die Dienste ausführbar sind, setzen wir die entsprechenden Berechtigungen.

sudo chmod +x /opt/JobRouter/JobActivity/JobActivity /opt/JobRouter/JobRunner/JobRunner /opt/JobRouter/JobServer/JobServer /opt/JobRouter/JobConfig/JobRouter.JobConfig.CLI

 

Erklärung:

ochmod ändert die Berechtigungen der angegebenen Verzeichnisse auf “Execute” (+x)

Symbolische Links erstellen

Erstellen Sie Links zu den ausführbaren Dateien, sodass diese von überall im System aufgerufen werden können.

sudo ln -s /opt/JobRouter/JobActivity/JobActivity  /usr/local/bin/JobActivity

sudo ln -s /opt/JobRouter/JobRunner/JobRunner  /usr/local/bin/JobRunner

sudo ln -s /opt/JobRouter/JobServer/JobServer  /usr/local/bin/JobServer

sudo ln -s /opt/JobRouter/JobConfig/JobRouter.JobConfig.CLI /usr/local/bin/JobConfig

 

Erklärung:

oln -s erstellt einen symbolischen Link zu einer bestimmten Datei, z.B.  /opt/JobRouter/JobActivity/JobActivity, unter dem Namen JobActivity im Verzeichnis /usr/local/bin. Damit kann der Dienst JobActivity einfach durch Eingabe von JobActivity in der Konsole aufgerufen werden.

Konfigurationsverzeichnis anlegen

sudo mkdir /etc/JobRouter

 

Erklärung:

omkdir -p erstellt die Verzeichnisse, falls sie nicht bereits existieren.

Benutzer und Gruppe für die Dienste anlegen

sudo groupadd -g 10001 jobrouter

sudo useradd -g jobrouter -s /sbin/nologin -M -d /nonexistent jobrouter

 

Erklärung:

ogroupadd erstellt eine Gruppe namens jobrouter mit der ID 10001.

ouseradd erstellt einen Benutzer namens jobrouter

-g jobrouter fügt diesen der Gruppe jobrouter hinzu

-s /sbin/nologin sorgt dafür, dass sich der Benutzer nicht am System anmelden, sondern lediglich die Dienste ausführen kann

-M verhindert, dass ein eigenes Home-Verzeichnis für den Benutzer erstellt wird

-d /nonexistent legt den Pfad des Home-Verzeichnisses auf /nonexistent fest, ein Verzeichnis, das es nicht gibt

Log- und Temp-Verzeichnisse anlegen und Berechtigungen setzen

sudo mkdir -p /opt/JobRouter/{JobActivity,JobRunner,JobServer}/log /opt/JobRouter/JobActivity/temp

sudo chown root:jobrouter /opt/JobRouter/{JobActivity,JobRunner,JobServer}/log /opt/JobRouter/JobActivity/temp

sudo chmod 770 /opt/JobRouter/{JobActivity,JobRunner,JobServer}/log /opt/JobRouter/JobActivity/temp

 

Erklärung:

omkdir -p erstellt die Verzeichnisse, falls sie nicht bereits existieren.

ochown setzt die Eigentümer der Verzeichnisse auf den Benutzer root und die Gruppe jobrouter

ochmod 770 gibt dem Benutzer root und der Gruppe jobrouter vollständige Lese-, Schreib- und Ausführungsrechte auf die log- und temp-Verzeichnisse. Andere Benutzer haben keinen Zugriff.

Datenbank-Verbindung für die Dienste einrichten

sudo JobConfig services setup

# Enter the config file base path: /etc/JobRouter

# Enter a value for ServiceGroup: (1): 1

# Enter a value for NumberOfPools: (1): 1

# Select a value for LogLevel: Error

# Enter a value for DeleteInDays: (10): 10

# Add a ConnectionConfigModel? [y/n] (y): y

# Enter a value for Name: JobRouter 

# Enter a value for Active: [y/n] (n): y

# Select a value for DatabaseType: MySql

# Enter a value for Host: 1.2.3.4

# Enter a value for Port: [1-65535] 

# Enter a value for Database: JOBROUTER

# Enter a value for Key: /usr/share/nginx/html/jobrouter/config/instance.key

# Enter a value for Username: jobrouter

# Enter a value for Password: ****************

# Add a ConnectionConfigModel? [y/n] (y): n

sudo JobConfig services test

 

Erklärung:

osudo JobConfig services setup startet das JobConfig-Tool zur Konfiguration der Dienste. Folgen Sie den Prompt und geben Sie die notwendigen Daten ein

config file base path: Ablageort der Konfigurationsdatei (empfohlen: /etc/JobRouter)

ServiceGroup: ID der Dienstegruppe (Standard: 1)  

NumberOfPools: Anzahl von Pools (Standard: 1)

LogLevel: Log Level (Empfohlen: Warning)

DeleteInDays: Anzahl Tage nachdem die Logs gelöscht werden (Standard: 10)

Add a ConnectionConfigModel? Soll eine DB-Verbindung angelegt werden? (y)

Name: Name der DB-Verbindung

Active: DB-Verbindung aktiv?

DatabaseType: Datenbanktyp  

Host: DB-Host

Port: DB-Port  

Database: DB-Name  

Key: Pfad zum instance.key von JobRouter

Username: DB-Benutzer

Password: DB-Passwort

osudo JobConfig services test testet die eingerichtete Verbindung

Systemd-Dienste für automatische Ausführung erstellen

JobRunner

sudo echo '[Unit]

Description=JobRunner Service

After=network.target

Wants=network-online.target 

 

[Service]

User=jobrouter

Group=jobrouter

SyslogIdentifier=JobRunner 

Environment="JOBROUTER_SERVICESCONFIGPATH=/etc/JobRouter"

Environment="XDG_CACHE_HOME=/tmp"

WorkingDirectory=/opt/JobRouter/JobRunner/

ExecStart=/usr/share/dotnet/dotnet /opt/JobRouter/JobRunner/JobRunner.dll

Restart=always

Type=notify 

KillSignal=SIGINT

 

[Install]

WantedBy=multi-user.target' > /etc/systemd/system/jobrunner.service

JobActivity

sudo echo '[Unit]

Description=JobActivity Service

After=network.target

Wants=network-online.target 

 

[Service]

User=jobrouter

Group=jobrouter

SyslogIdentifier=JobActivity 

Environment="JOBROUTER_SERVICESCONFIGPATH=/etc/JobRouter"

Environment="XDG_CACHE_HOME=/tmp"

WorkingDirectory=/opt/JobRouter/JobActivity/

ExecStart=/usr/share/dotnet/dotnet /opt/JobRouter/JobActivity/JobActivity.dll

Restart=always

Type=notify 

KillSignal=SIGINT

 

[Install]

WantedBy=multi-user.target' > /etc/systemd/system/jobactivity.service

JobServer

sudo echo '[Unit]

Description=JobServer Service

After=network.target

Wants=network-online.target 

 

[Service]

User=jobrouter

Group=jobrouter

SyslogIdentifier=JobServer 

Environment="JOBROUTER_SERVICESCONFIGPATH=/etc/JobRouter"

Environment="XDG_CACHE_HOME=/tmp"

WorkingDirectory=/opt/JobRouter/JobServer/

ExecStart=/usr/share/dotnet/dotnet /opt/JobRouter/JobServer/JobServer.dll

Restart=always

Type=notify 

KillSignal=SIGINT

 

[Install]

WantedBy=multi-user.target' > /etc/systemd/system/jobserver.service

 

Erklärung:

osudo echo [...] > /etc/systemd/system/jobserver.service schreibt eine Systemd-Dienstdatei für den Dienst in das Verzeichnis /etc/systemd/system/. Diese Datei definiert, wie der Dienst gestartet und verwaltet werden soll. Eine detaillierte Erklärung der einzelnen Abschnitte und Parameter finden Sie im Abschnitt „Aufbau der Dienstdatei“.

Systemd-Dienste laden und aktivieren

Zum Abschluss werden die neuen Dienste geladen und automatisch gestartet.

sudo systemctl daemon-reload

sudo systemctl enable --now jobserver

sudo systemctl enable --now jobrunner

sudo systemctl enable --now jobactivity

 

Erklärung:

osystemctl daemon-reload lädt die neuen Dienstdateien.

osystemctl enable --now aktiviert die Dienste für den automatischen Start und startet sie sofort.