Basiskomponenten installieren

Folgender Befehl aktualisiert die Paketlisten und installiert grundlegend benötigte Abhängigkeiten, um JobRouter unter Ubuntu Linux 18.04 LTS (64 Bit) zu betreiben.

sudo apt update && sudo apt upgrade

 

sudo apt -y install apt-transport-https ca-certificates curl wget gnupg libicu-dev libjpeg-dev libpng-dev

 

sudo apt -y install librabbitmq-dev libssh-dev libxml2-dev libzip-dev unixodbc unixodbc-dev unzip zip zlib1g-dev

 

Installation und Konfiguration des Apache Webservers

Als Webserver kommt Apache 2 in Kombination mit einigen Modulen zum Einsatz.

Installieren und aktivieren Sie den Apache 2, indem Sie die nachfolgenden Befehle ausführen.

 

sudo apt install -y apache2

 

sudo a2dismod mpm_event

 

sudo a2enmod mpm_prefork rewrite

 

Damit alle .htaccess-Dateien aus der JobRouter-Installation verarbeitet werden können, ist es erforderlich, dass man in der Apache-Konfiguration das Attribut AllowOverride von None auf All setzt. Diese Änderung können Sie über den nano-Editor vornehmen.

sudo nano /etc/apache2/apache2.conf

 

Suchen Sie nach

<Directory /var/www/>

  Options Indexes FollowSymLinks

  AllowOverride None

  Require all granted

</Directory>

und ändern es um in

<Directory /var/www/>

  Options Indexes FollowSymLinks

  AllowOverride All

  Require all granted

</Directory>

 

Speichern Sie Ihre Änderungen im nano-Editor mittels der Tastenkombination [STRG]+[X] und stimmen Sie den Änderungen zu. Danach muss der Apache neu gestartet werden.

sudo systemctl restart apache2

 

Installation von PHP

Da die Paketquellen für Ubuntu Linux 18.04 LTS (64 Bit) aktuell kein PHP 7.3 enthält, muss PHP 7.3 nachinstalliert und die notwendigen Erweiterungen geladen werden.

Bitte beachten Sie: Externe Repositories werden von uns weder bereitgestellt noch unterstützt. JobRouter hat keine Kontrolle über diese Ressourcen. Daher bieten wir bei Problemen keinen Support an.

 

sudo LC_ALL=C.UTF-8 add-apt-repository -y ppa:ondrej/php

 

sudo apt update

 

sudo apt -y install php7.3 libapache2-mod-php

 

sudo apt -y install php-{amqp,msgpack,pear,redis}

 

sudo apt -y install php7.3-{bcmath,common,curl,gd,intl,json,ldap,odbc,opcache,mbstring,mysql,soap,xml,zip}

 

SourceGuardian

JobRouter benötigt die SourceGuardian-Erweiterung, um die verschlüsselten Quellcode-Bestandteile zu laden und auszuführen.

 

cd /tmp/

 

wget -c https://www.sourceguardian.com/loaders/download/loaders.linux-x86_64.zip

 

unzip loaders.linux-x86_64.zip

 

sudo cp ixed.7.3.lin $(php -r 'echo ini_get("extension_dir");')

 

rm -f loaders.linux-x86_64.zip

 

sudo tee -a /etc/php/7.3/mods-available/sourceguardian.ini > /dev/null <<EOT

; configuration for php sourceguardian module

; priority = 30

extension = ixed.7.3.lin

EOT

 

sudo phpenmod sourceguardian

 

MariaDB-Server Installation

Da die Paketquellen für Ubuntu Linux 18.04 LTS (64 Bit) aktuell keine Version 10.3 enthält, muss MariaDB-Server für die von uns unterstützte Version nachinstalliert werden.

Bitte beachten Sie: Externe Repositories werden von uns weder bereitgestellt noch unterstützt. JobRouter hat keine Kontrolle über diese Ressourcen. Daher bieten wir bei Problemen keinen Support an.

Hinweis: Sofern Sie ein anderes externes Repository verwenden wollen, so können Sie dies auf folgender Seite selbst aussuchen: https://downloads.mariadb.org/mariadb/repositories/

sudo apt -y install software-properties-common

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8

sudo add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mirror2.hs-esslingen.de/mariadb/repo/10.3/ubuntu bionic main'

sudo apt update

Um MariaDB-Server zu installieren, führen Sie folgenden Befehl aus.

sudo apt -y install mariadb-server

Wir empfehlen Ihnen den MariaDB-Server im Nachgang abzusichern.

sudo mysql_secure_installation

Stoppen Sie den bereits aktiven Service MariaDB.

sudo systemctl stop mariadb.service

Setzen Sie die Einstellung innodb_page_size von 16k auf 32k.

sudo tee -a /etc/mysql/mariadb.conf.d/50-jobrouter.cnf > /dev/null <<EOT

[mysqld]

# JobRouter fix innodb page size

innodb_page_size=32k

EOT

 

Bitte beachten Sie: Stellen Sie sicher, dass Sie vor der Ausführung folgender Befehle eine Datenbank-Sicherung erstellt haben. Durch das Löschen dieser Dateien werden auch vorhandene Datenbanken zerstört.

Löschen Sie die InnoDB Redo Log-Dateien und die InnoDB System Tablespace-Datendateien. Ansonsten wird verhindert, dass der MariaDB-Service einwandfrei gestartet werden kann.

sudo rm /var/lib/mysql/ib_logfile* && sudo rm /var/lib/mysql/ibdata*

Starten Sie den Service MariaDB.

sudo systemctl start mariadb.service

Um zu Überprüfen, ob der zuvor gesetzte Wert von 32k für die Einstellung innodb_page_size übernommen worden ist, loggen Sie sich einmalig als root-Benutzer in MariaDB als Client ein.

mysql -u root -p

 

SHOW GLOBAL STATUS where Variable_name = 'Innodb_page_size';

Damit Sie gegen Ende dieses Kapitels das JobRouter Web Setup durchführen können, ist es notwendig einen neuen Datenbankbenutzer mit administrativen Rechten in MariaDB anzulegen.

Bitte beachten Sie: Der neue Datenbankbenutzer, als auch die Datenbanktabelle sollte in Großbuchstaben angelegt werden.

exit;

 

Optionale Installation des Linux-Treibers für Microsoft SQL Server

Bitte beachten Sie: Wenn Sie JobRouter mit MSSQL Server für Linux nutzen wollen, ist die Installation eines zusätzlichen Treibers erforderlich. Anderfalls können Sie diesen Abschnitt überspringen.

Zur Installation von Microsoft SQL Server als Linux-Treiber ist es erforderlich, folgende Befehle auszuführen.

Bitte beachten Sie: Externe Repositories werden von uns weder bereitgestellt noch unterstützt. JobRouter hat keine Kontrolle über diese Ressourcen. Daher bieten wir bei Problemen keinen Support an.

 

sudo pecl channel-update pecl.php.net

 

wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - 

 

sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/prod.list)"

 

sudo apt update

 

Um die Installation fortzuführen, ist es erforderlich, dass Sie mit dem nächsten Befehl zweifach der Lizenzbestimmung zustimmen.

sudo apt -y install php7.3-dev mssql-tools unixodbc-dev 

 

sudo pecl install sqlsrv pdo_sqlsrv

 

sudo tee -a /etc/php/7.3/mods-available/sqlsrv.ini > /dev/null <<EOT

; configuration for php sqlsrv module

; priority = 20

extension = sqlsrv.so

EOT

 

sudo tee -a /etc/php/7.3/mods-available/pdo_sqlsrv.ini > /dev/null <<EOT

; configuration for php sqlsrv module

; priority = 20

extension = pdo_sqlsrv.so

EOT

 

sudo phpenmod sqlsrv pdo_sqlsrv

 

Konfiguration von JobRouter

Wir empfehlen eine separate ini-Datei für JobRouter-spezielle PHP-Einstellungen wie beispielsweise die Zeitzone.

Damit die Standard-Pfade für die Erstinstallation greifen, müssen Sie die Einstellungen für error_log, session.save_path und upload_tmp_dir mit einem Semmikolon am Zeilenanfang auskommentieren. Sofern Sie diese Konfiguration im Nachgang verändern möchten, kommentieren Sie das Semmikolon am Zeilenanfang wieder ein und ändern Sie den Pfad.

 

sudo tee -a /etc/php/7.3/mods-available/jobrouter.ini > /dev/null <<EOT

; configuration for jobrouter

; priority = 50

 

date.timezone = Europe/Berlin

log_errors = On
;error_log = /var/www/html/jobrouter/output/log/php_errors.log
max_execution_time = 300
max_input_vars = 10000
memory_limit = 1024M
post_max_size = 100M
upload_max_filesize = 100M
error_reporting = E_ALL & ~E_NOTICE
;session.save_path = /var/www/html/jobrouter/sessions

;upload_tmp_dir = /var/www/html/jobrouter/tmp

EOT

Legen Sie die Standard-Pfade für das Caching von PHP für die Erstinstallation fest, indem Sie die Pfade in den Einstellungen für error_log und file_cache setzen.

sudo tee -a /etc/php/7.3/mods-available/opcache.ini > /dev/null <<EOT

; configuration for jobrouter

; priority = 10

opcache.enable = 1
opcache.cli_enable = 1
opcache.memory_consumption = 256
opcache.interned_strings_buffer = 32
opcache.max_accelerated_files = 10000
opcache.fast_shutdown = 1
opcache.error_log = /var/www/html/jobrouter/output/log/opcache_errors.log
opcache.log_verbosity_level = 2
opcache.file_cache = /var/www/html/jobrouter/cache/opcache
opcache.file_cache_fallback = 1

EOT

Damit die Konfigurationsdateien geladen werden, ist es erforderlich folgende zwei Befehle auszuführen.

sudo phpenmod jobrouter

 

sudo phpenmod opcache

Anschließend muss der Apache-Webserver neu gestartet werden.

sudo service apache2 restart

 

Installation der JobRouter-Webanwendung

Um JobRouter zu installieren muss nun im Support Portal die aktuelle Version heruntergeladen und extrahiert werden. In folgender Befehlsfolge muss die entsprechende <jobrouter-download-url> ersetzt werden.

 

cd /root/

 

wget -c <jobrouter-download-url>

 

sudo mkdir /var/www/html/jobrouter 

 

sudo unzip JobRouter*.zip -d /var/www/html/jobrouter

 

sudo chown -R root:www-data /var/www/html/jobrouter

 

sudo chmod -R 550 /var/www/html/jobrouter

 

sudo chmod -R 770 /var/www/html/jobrouter/cache

 

sudo chmod -R 770 /var/www/html/jobrouter/assets/cache 

 

sudo chmod -R 770 /var/www/html/jobrouter/config 

 

sudo chmod -R 770 /var/www/html/jobrouter/data

 

sudo chmod -R 770 /var/www/html/jobrouter/export

 

sudo chmod -R 770 /var/www/html/jobrouter/functions

 

sudo chmod -R 770 /var/www/html/jobrouter/license

 

sudo chmod -R 770 /var/www/html/jobrouter/output

 

sudo chmod -R 770 /var/www/html/jobrouter/styles 

 

sudo chmod -R 770 /var/www/html/jobrouter/uploads

 

sudo chmod -R 770 /var/www/html/jobrouter/mobile/config 

 

Anschließend kann das JobRouter Web Setup gestartet werden. Dabei müssen die Pfade für alle Verzeichnisse angepasst werden.