Installation
Serverinstallation Windows
Der für die Squeeze-Server Installation notwendige Installer wird von der Firma Dexpro-Solutions GmbH auf Anfrage zur Verfügung gestellt.
In Zukunft wird es ein entsprechendes Download-Portal geben, wo sowohl der Server - Installer als auch die Dateien für das Update auf die neueste Squeeze - Version heruntergeladen werden können.
Installation Squeeze - Server
Squeeze kann auf jeder Partition eines Rechners installiert werden. Im Setup sind einige Pfade voreingestellt (D:.\Squeeze).
Für die Installations-Dokumentation wird die Server-Installation mit Version 1.5.0 auf der C:\ Partition durchgeführt.
Die Installation wird mit Doppelklick auf die Installer.exe gestartet und muss mit administrativen Benutzer-Rechten durchgeführt werden.
Nachdem der Server-Installer die erforderlichen Dateien in das angegebene Verzeichnis (C:\Squeeze) entpackt hat, startet die Installation automatisch.
Nachdem das initiale Setup abgeschlossen ist, sollten geprüft werden ob alle Dienste installiert worden sind und diese bereits gestartet wurden.
Dienstname | Staus |
01_SQUEEZE_WebServer | Wird ausgeführt |
02_SQUEEZE_DB_Server | Wird ausgeführt |
03_SQUEEZE_SearchEngine | Wird ausgeführt |
04_SQUEEZE_MessageQueue | Wird ausgeführt |
05_SQUEEZE_Worker | nicht gestartet |
Die Dienste 01 bis 04 sollten gestartet sein. Der Dienst 05 ist zu diesem Zeitpunkt nicht gestartet, dieser Dienst muss nach Abschluss der Server und - Mandanten-Konfiguration erst konfiguriert werden bis er gestartet werden kann.
Konfiguration Squeeze - Server
Nachdem das eigentliche Server-Setup abgeschlossen ist, wird der Server konfiguriert. Dazu wird der Browser gestartet und in der Adresszeile des Browsers der gewünschte Mandanten-Name eingegeben.
Es können mehrere technische Mandanten auf einem Squeeze Server konfiguriert werden. Jeder Mandant hat sein eigenes Repository und eine eigene Datenbank.
Im ausgelieferten Server-Setup ist bereits eine Lizenz für 300 Dokumente für den Mandanten localhost enthalten.
Die Mandanten-Installation für localhost wird für diese Dokumentation verwendet. Dazu wird im Browser in der Adresszeile http://localhost eingegeben. Daraufhin startet die Konfiguration des Squeeze-Servermandanten:
Wenn MS SQL gewählt wird dann ist der Port 1433, sollte eine Instanz von MS SQL genutzt werden, dann muss der Port leer bleiben (dynamischer Port), bei MYSQL ist der Port 3306.
In diesem Beispiel wird die ausgelieferte MariaDB genutzt. Die Felder können entsprechend angepasst werden. Mit dem Button Next öffnet sich der nächste Dialog:
- Admin Password: guest
- Worker Password: squeeze
- Password: squeeze
Für die Demo-Installation wird kein SMTP Versand konfiguriert, da die verwendete Sandbox für die Installation keinen Internetzugang hat. Dazu wird im Feld "Use SMTP Zugang" der Wert auf False gesetzt
Mit dem Button Next öffnet sich der nächste Dialog:
API-Key: 7ce9c77c-50d5-4fd8-a707-a2f163d4b132
Konfiguration des Workers
C:\SQUEEZE\repository\config\worker\config
Die Angabe des Servernames (FQDN) für den API Key ist Case-Sensitiv
Wir empfehlen den Servernamen generell in Kleinbuchstaben zu schreiben.
Serverinstallation Linux
The following steps describe how to install on a Debian 10 server. Generally you can try to install on other Linux systems.
This may work if all Squeeze dependencies like the correct PHP version, PHP modules and Apache extensions are present in your operating systems package repositories.
Linux (Debian 10)
1. Prepare Debian for installation via apt
Before installing Squeeze some third party applications need to be installed. Follow the steps below to install these applications.
Please note that using a proxy to connect to the internet might need some additional configuration like:export https_proxy=https://proxy.intra.net:proxy_port
orexport http_proxy=http://user:password@proxy.intra.net:proxy_port
apt update
apt upgrade
2. Install PHP 7.4
apt-get update
apt-get install php7.4 php7.4-cli php7.4-common php7.4-imap php7.4-mysql php7.4-mailparse php7.4-bcmath php7.4-intl php7.4-gd php7.4-xml php7.4-xsl php7.4-mbstring php7.4-opcache php7.4-curl php7.4-zip php7.4-bz2 php7.4-soap php7.4-json php7.4-imagick libapache2-mod-php7.4
3. Install Apache
To install Apache run the following command
apt install apache2
And enable the following modules
a2enmod proxy rewrite deflate filter headers
4. Install MariaDB
apt update
apt install mariadb-server
systemctl status mariadb
run the follwing command and follow the instructions to secure the installation:
mysql_secure_installation
Create a new user for later use
mysql --user=root mysql
CREATE USER 'squeeze'@'localhost' IDENTIFIED BY 'secret';
GRANT ALL PRIVILEGES ON *.* TO 'squeeze'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
5. Install RabbitMQ
Run the following command to install RabbitMQ including the management web interface
apt-get install rabbitmq-server
rabbitmq-plugins enable rabbitmq_management
If needed add a new user to RabbitMQ
rabbitmqctl add_user username password
rabbitmqctl set_user_tags username administrator
rabbitmqctl set_permissions -p / username ".*" ".*" ".*"
6. Install ElasticSearch
Run the following command to install ElasticSearch
nano /etc/apt/sources.list
deb http://ftp.us.debian.org/debian sid main
apt-get update
apt install openjdk-8-jre-headless
apt install gnupg2
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-5.x.list
apt update && apt upgrade
apt install apt-transport-https uuid-runtime pwgen
apt update
apt install elasticsearch
cd /usr/share/elasticsearch/bin
./elasticsearch-plugin install analysis-icu
./elasticsearch-plugin install mapper-attachments
To be able to install the plugins behind a proxy please use the following commands:
ES_JAVA_OPTS="-Dhttp.proxyHost=proxy.intra.net -Dhttp.proxyPort=3128 -Dhttps.proxyHost=proxy.intra.net -Dhttps.proxyPort=3128" ./elasticsearch-plugin install analysis-icu
ES_JAVA_OPTS="-Dhttp.proxyHost=proxy.intra.net -Dhttp.proxyPort=3128 -Dhttps.proxyHost=proxy.intra.net -Dhttps.proxyPort=3128" ./elasticsearch-plugin install mapper-attachments
Optional:
nano /etc/elasticsearch/elasticsearch.yml
cluster.name: my-applicationnano
/etc/elasticsearch/jvm.options
-Xms512m
-Xmx512m
Enable and start ElasticSearch
systemctl daemon-reload
systemctl enable elasticsearch.service
systemctl restart elasticsearch.service
systemctl status elasticsearch.service
apt install tesseract-ocr tesseract-ocr-deu imagemagick ghostscript poppler-utils zbar-tools git sudo
8. Install Squeeze
cd /var/www/html
git clone https://git.dexpro-solutions.de/dex/squeeze/Squeeze.git
chown -R www-data Squeeze/
chmod -R 775 Squeeze/
nano /etc/apache2/sites-enabled/000-default.conf
DocumentRoot /var/www/html/Squeeze/public
<Directory "/var/www/html/Squeeze/public">
AllowOverride All
</Directory>
Now restart the apache webserver:
systemctl restart apache2
9. Web installer
Once the installer finished, start your preferred browser and open http://localhost to run the web installer
Serverupdate Windows
Das Update-Package enthält zumeist (nur) ein neues htdocs Verzeichnis
- SQUEEZE Dienste beenden
- htdocs Verzeichnis sichern
- neues htdocs Verzeichnis im SQUEEZE Verzeichnis entpacken
- Im Worker-Verzeichnis muss die umzug.json enthalten sein, diese ggf. aus dem gesicherten htdocs Verzeichnis kopieren
- SQUEEZE Dienste wieder starten
- Im Swagger mit der API "migrateDatabase" eine Migration durchführen
- Jobs und andere projektspezifische Anpassungen im htdocs Verzeichnis bei Bedarf prüfen/wiederherstellen