Wie man ONLYOFFICE Document Server aus dem Quellcode unter Ubuntu kompiliert

ONLYOFFICE Document Server umfasst webbasierte Viewer und kollaborative Editoren für Textdokumente, Tabellenkalkulationen und Präsentationen, die eine hohe Kompatibilität mit OOXML-Formaten (docx, xlsx, pptx) bieten. Die Suite wird unter der GNU AGPL v3.0 vertrieben.

ONLYOFFICE Document Server kann mit verschiedenen Cloud-Storage-Plattformen wie Nextcloud, ownCloud, Seafile, HumHub, Plone, etc. integriert werden, ebenso wie in die Lösung, die Sie selbst bauen. Document Server kann als Teil der ONLYOFFICE Community Edition verwendet werden, einer kostenlosen Open-Source-Lösung mit Online-Redakteuren und Kollaborationsplattform.

ONLYOFFICE Dokument Editor

Die build_tools ermöglichen es den Benutzern, alle notwendigen Komponenten automatisch zu installieren und die neueste Version der Online-Editoren aus dem Quellcode zu kompilieren.

In diesem Tutorial werden wir lernen, wie Sie ONLYOFFICE Document Server für Ihre Ubuntu-Installation (64-bit Ubuntu) kompilieren.

Systemvoraussetzungen

  • CPU: Dual-Core 2 GHz oder besser
  • RAM: 2 GB oder mehr
  • HDD: mindestens 40 GB freier Speicherplatz
  • Mindestens 4 GB Swap

Schritt 1: Installieren der Abhängigkeiten

Falls Python und Git nicht auf Ihrem Computer installiert sind, installieren Sie sie mit dem folgenden Befehl:

sudo apt-get install -y python git

Schritt 2: Erstellen Sie den Document Server-Quellcode

Klonen Sie das build_tools-Repository:

git clone https://github.com/ONLYOFFICE/build_tools.git

Gehen Sie zum entsprechenden Verzeichnis:

cd build_tools/tools/linux

Führen Sie das Skript aus:

./automate.py server

Sobald dies geschehen ist, ist der erstellte Dokumentenserver im Verzeichnis ../../out/linux_64/onlyoffice/documentserver/ verfügbar.

Schritt 3: Installieren und Konfigurieren von NGINX, PostgreSQL und RabbitMQ

Document Server verwendet NGINX als Webserver und PostgreSQL als Datenbank. Für die korrekte Arbeit ist auch RabbitMQ erforderlich.

1. Installieren und Konfigurieren von NGINX

Installieren Sie NGINX mit diesem Befehl:

sudo apt-get install nginx

Deaktivieren Sie die Standard-Website:

sudo rm -f /etc/nginx/sites-enabled/default

Richten Sie die neue Website ein. Erstellen Sie die Datei /etc/nginx/sites-available/onlyoffice-documentserver, die die folgenden Daten enthält:

map $http_host $this_host {
  "" $host;
  default $http_host;
}
map $http_x_forwarded_proto $the_scheme {
  default $http_x_forwarded_proto;
  "" $scheme;
}
map $http_x_forwarded_host $the_host {
  default $http_x_forwarded_host;
  "" $this_host;
}
map $http_upgrade $proxy_connection {
  default upgrade;
  "" close;
}
proxy_set_header Host $http_host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $proxy_connection;
proxy_set_header X-Forwarded-Host $the_host;
proxy_set_header X-Forwarded-Proto $the_scheme;
server {
  listen 0.0.0.0:80;
  listen [::]:80 default_server;
  server_tokens off;
  rewrite ^\/OfficeWeb(\/apps\/.*)$ /web-apps$1 redirect;
  location / {
    proxy_pass http://localhost:8000;
    proxy_http_version 1.1;
  }
  location /spellchecker/ {
    proxy_pass http://localhost:8080/;
    proxy_http_version 1.1;
  }
}

Fügen Sie den Symlink zu der neu erstellten Website in das Verzeichnis /etc/nginx/sites-available ein:

sudo ln -s /etc/nginx/sites-available/onlyoffice-documentserver /etc/nginx/sites-enabled/onlyoffice-documentserver

Starten Sie NGINX neu:

sudo nginx -s reload

2. Installieren und Konfigurieren von PostgreSQL

Installieren Sie PostgreSQL:

sudo apt-get install postgresql

Erstellen Sie die PostgreSQL-Datenbank und den Benutzer (geben Sie sowohl für den Benutzer als auch für das Passwort ‚onlyoffice‘ ein):

sudo -i -u postgres psql -c "CREATE DATABASE onlyoffice;"
sudo -i -u postgres psql -c "CREATE USER onlyoffice WITH password 'onlyoffice';"
sudo -i -u postgres psql -c "GRANT ALL privileges ON DATABASE onlyoffice TO onlyoffice;"

Konfigurieren Sie die Datenbank:

psql -hlocalhost -Uonlyoffice -d onlyoffice -f ../../out/linux_64/onlyoffice/documentserver/server/schema/postgresql/createdb.sql

Der obige Befehl ist eine Zeile! Geben Sie das ‚onlyoffice‘-Passwort ein, wenn Sie aufgefordert werden, ein Passwort für den onlyoffice PostgreSQL-Benutzer anzugeben.

3. RabbitMQ installieren

Installieren Sie RabbitMQ mit folgendem Befehl:

sudo apt-get install rabbitmq-server

Schritt 4: Schriften-Daten erzeugen

Führen Sie die Befehle aus:

cd out/linux_64/onlyoffice/documentserver/
mkdir fonts
LD_LIBRARY_PATH=${PWD}/server/FileConverter/bin server/tools/allfontsgen \
  --input="${PWD}/core-fonts" \
  --allfonts-web="${PWD}/sdkjs/common/AllFonts.js" \
  --allfonts="${PWD}/server/FileConverter/bin/AllFonts.js" \
  --images="${PWD}/sdkjs/common/Images" \
  --selection="${PWD}/server/FileConverter/bin/font_selection.bin" \
  --output-web='fonts' \
  --use-system="true"

Schritt 5: Präsentationsthemen generieren

Führen Sie die folgenden Befehle aus:

cd out/linux_64/onlyoffice/documentserver/
LD_LIBRARY_PATH=${PWD}/server/FileConverter/bin server/tools/allthemesgen \
  --converter-dir="${PWD}/server/FileConverter/bin"\
  --src="${PWD}/sdkjs/slide/themes"\
  --output="${PWD}/sdkjs/common/Images"

Schritt 6: Dokumentenserver ausführen

Alle Komponenten von ONLYOFFICE Document Server laufen als Vordergrundprozesse. Sie müssen die Terminalkonsolen trennen, um sie laufen zu lassen, oder spezielle Tools starten, die es ermöglichen, Vordergrundprozesse im Hintergrundmodus laufen zu lassen.

Starten Sie den FileConverter-Dienst:

cd out/linux_64/onlyoffice/documentserver/server/FileConverter
LD_LIBRARY_PATH=$PWD/bin NODE_ENV=development-linux NODE_CONFIG_DIR=$PWD/../Common/config ./converter

Starten Sie den SpellChecker-Dienst:

cd out/linux_64/onlyoffice/documentserver/server/SpellChecker
NODE_ENV=development-linux NODE_CONFIG_DIR=$PWD/../Common/config ./spellchecker

Starten Sie den DocService-Dienst:

cd out/linux_64/onlyoffice/documentserver/server/DocService
NODE_ENV=development-linux NODE_CONFIG_DIR=$PWD/../Common/config ./docservice

Das ist alles! Jetzt können Sie eine der Optionen wählen, wie Sie den in der Einführung beschriebenen ONLYOFFICE Document Server (Online-Redakteure) nutzen können: integriert mit einem beliebigen Cloud-Storage-Service, oder integriert in Ihre eigene Lösung, oder zusammen mit dem ONLYOFFICE Community Server.

Das könnte dich auch interessieren …