Installieren der Docker-Version von ONLYOFFICE Docs für arm64

Einleitung

Ab Version 7.1 kann ONLYOFFICE Docs mit Docker für die 64-Bit-ARM-Architektur installiert werden.

Mit der Developer Edition können Sie ONLYOFFICE Docs auf Ihrem lokalen Server installieren und Online-Editoren in Ihre Webanwendung integrieren.

ONLYOFFICE Docs ist eine Online-Office-Suite mit Viewern und Editoren für Texte, Kalkulationstabelle und Präsentationen, die vollständig mit den Office Open XML-Formaten .docx, .xlsx, .pptx kompatibel ist und eine gemeinsame Bearbeitung in Echtzeit ermöglicht.

Funktionalität

  • Dokumenteneditor
  • Tabellenkalkulation
  • Präsentationseditor
  • Mobile Web-Viewers
  • Mobile Web-Editoren
  • Gemeinsame Bearbeitung
  • Hieroglyphen-Unterstützung
  • Unterstützung für alle gängigen Formate: DOC, DOCX, TXT, ODT, RTF, ODP, EPUB, ODS, XLS, XLSX, CSV, PPTX, HTML

Sehen Sie sich die detaillierte Liste der Funktionen an, die für ONLYOFFICE Docs Developer Edition verfügbar sind.

Diese Anleitung zeigt Ihnen, wie Sie ONLYOFFICE Docs Developer Edition Docker-Version 7.2 und höher für die 64-Bit-ARM-Architektur installieren.

Systemanforderungen
  • CPU
    64-Bit-ARM-Prozessoren
  • RAM
    4 GB oder mehr
  • HDD
    mindestens 40 GB freier Speicherplatz
  • SWAP
    mindestens 4 GB, hängt aber vom Host-Betriebssystem ab. Mehr ist besser
  • OS
    Linux-Distribution für arm64
  • Zusätzliche Anforderungen
    • Docker: jede vom Docker-Team unterstützte Version

Installation von ONLYOFFICE Docs

Sie müssen die neueste Docker-Version installiert haben. Wenn Sie sie nicht haben, lesen Sie bitte den Installationsabschnitt auf der Docker-Website, um zu erfahren, wie Sie sie bekommen.
Docker gibt standardmäßig Google DNS-Server an. Wenn Ihre ONLYOFFICE Docs keinen Zugriff auf das Internet haben sollen, empfehlen wir Ihnen, die Standard-Docker-DNS-Adresse in die Adresse Ihres lokalen DNS-Servers zu ändern. Wechseln Sie dazu in die Datei /etc/default/docker und ändern Sie die IP-Adresse in der folgenden Zeile auf die IP-Adresse eines DNS-Servers in Ihrem lokalen Netzwerk:
docker_OPTS="--dns 8.8.8.8"

Für RPM-basierte Betriebssysteme wie CentOS:

  1. Erstellen Sie die Konfigurationsdatei /etc/docker/daemon.json mit folgendem Inhalt:
    { "dns" : [ "8.8.8.8" ] }
  2. Starten Sie den Docker-Dienst neu:
    
    sudo systemctl restart docker.service

Nachdem Sie Docker installiert haben, führen Sie es aus und führen Sie den folgenden Befehl aus:

sudo docker run -i -t -d -p 80:80 --restart=always -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-de:latest
Wichtig Ab Version 7.2 haben wir eine zufällige Generierung von JWT-Geheimnissen hinzugefügt. Wenn das JWT-Geheimnis nicht mit den Umgebungsvariablen angegeben wird, führt dies zu einer Neugenerierung bei jedem VM- oder physischen Server-Neustart, sodass es bei Integrationen zu Problemen kommen kann. Um dieses Problem zu vermeiden, geben Sie Ihren eigenen Wert in -e JWT_SECRET=my_jwt_secret an.

Wenn Sie JWT in Ihrer Installation nicht verwenden möchten, verwenden Sie -e JWT_ENABLED=false.

Standardmäßig überwacht ONLYOFFICE Docs die eingehenden Verbindungen über Port 80. Ab Version 4.3 können Sie den Port für ONLYOFFICE Docs ändern, wenn Sie ihn anstelle des Standardports verwenden möchten. Dies kann einfach durch Ändern des Mapping-Ports während der Installation erfolgen:
sudo docker run -i -t -d -p <PORT_NUMBER>:80 --restart=always -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-de:latest
Dabei ist <PORT_NUMBER> die Nummer des Ports, den ONLYOFFICE Docs verwenden soll.

Dadurch werden ONLYOFFICE Docs und alle erforderlichen Abhängigkeiten installiert (die Liste der vom Skript ausgeführten Aktionen finden Sie hier).

Speichern von Daten außerhalb von Containern

Alle Daten werden in den speziell gekennzeichneten Verzeichnissen, Datenvolumen, an folgendem Ort gespeichert:

  • /var/log/onlyoffice für ONLYOFFICE Docs-Protokolle
  • /var/www/onlyoffice/Data für Zertifikate
  • /var/lib/onlyoffice für Datei-Cache
  • /var/lib/postgresql für Datenbank
Wir empfehlen Wir empfehlen dringend, die Daten außerhalb der Docker-Container auf dem Hostcomputer zu speichern, da Sie so ONLYOFFICE Docs problemlos aktualisieren können, sobald die neue Version veröffentlicht wird und Ihre Daten nicht verloren gehen.

Um Zugriff auf Ihre Daten zu erhalten, die sich außerhalb des Containers befinden, müssen Sie die Volumes bereitstellen. Dies kann durch Angabe der Option -v in docker run erfolgen.

sudo docker run -i -t -d -p 80:80 --restart=always \
    -v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice  \
    -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data  \
    -v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \
    -v /app/onlyoffice/DocumentServer/db:/var/lib/postgresql -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-de:latest
Bitte beachten Sie, dass, falls Sie versuchen, noch nicht erstellte Ordner bereitzustellen, diese Ordner erstellt werden, der Zugriff darauf jedoch eingeschränkt ist. Sie müssen ihre Zugriffsrechte manuell ändern.

Normalerweise müssen Sie Containerdaten nicht speichern, da der Containervorgang nicht von seinem Zustand abhängt. Das Speichern von Daten ist nützlich:

  • für den einfachen Zugriff auf Containerdaten, z. B. Protokolle;
  • um die Begrenzung der Größe der Daten im Container aufzuheben;
  • wenn Dienste verwendet werden, die außerhalb des Containers gestartet werden, wie z. B. PostgreSQL, Redis, RabbitMQ.

Ausführen von ONLYOFFICE Docs mit HTTPS

sudo docker run -i -t -d -p 443:443 --restart=always \
-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-de:latest

Der Zugriff auf die onlyoffice-Anwendung kann per SSL gesichert werden, um unbefugten Zugriff zu verhindern. Während ein CA-zertifiziertes SSL-Zertifikat die Überprüfung der Vertrauenswürdigkeit durch die CA ermöglicht, können selbst signierte Zertifikate auch ein gleiches Maß an Vertrauensüberprüfung bieten, solange jeder Client einige zusätzliche Schritte unternimmt, um die Identität Ihrer Website zu überprüfen. Nachfolgend finden Sie Anweisungen, um dies zu erreichen.

Um die Anwendung per SSL abzusichern, werden grundsätzlich zwei Dinge benötigt:

  • Privat Schlüssel (.key)
  • SSL-Zertifikat (.crt)

Sie müssen also die folgenden Dateien erstellen und installieren:

/app/onlyoffice/DocumentServer/data/certs/onlyoffice.key
/app/onlyoffice/DocumentServer/data/certs/onlyoffice.crt

Bei Verwendung von CA-zertifizierten Zertifikaten (z. B. Let's Encrypt) werden Ihnen diese Dateien von der CA bereitgestellt. Wenn Sie selbstsignierte Zertifikate verwenden, müssen Sie diese Dateien selbst generieren.

Umstellung von ONLYOFFICE Docs auf HTTPS mit certbot

Der einfachste Weg, ONLYOFFICE Docs auf HTTPS umzustellen, besteht darin, automatisch Let's Encrypt SSL-Zertifikate mit certbot zu erhalten.

Führen Sie den ONLYOFFICE Docs Docker-Container aus, geben Sie die Ports 80 und 443 an und legen Sie Ihre eigenen Werte für die Variablen fest:

sudo docker run -i -t -d -p 80:80 -p 443:443 --restart=always \
    -e LETS_ENCRYPT_DOMAIN=yourdomain.com -e LETS_ENCRYPT_MAIL=email@example.com -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-de:latest

Wobei:

  • LETS_ENCRYPT_DOMAIN - einen Domänennamen, der für das Zertifikat verwendet werden soll.
  • LETS_ENCRYPT_MAIL - eine E-Mail-Adresse, die für die Registrierung und den Wiederherstellungskontakt verwendet wird.

Das letsencrypt.org CA-signierte Zertifikat wird automatisch generiert und auf Ihrem Server installiert. Jetzt sollten Ihre ONLYOFFICE Docs unter der Adresse https://IhreDomain.com verfügbar sein.

Generierung von selbstsignierten Zertifikaten

Die Generierung von selbstsignierten SSL-Zertifikaten umfasst ein einfaches 3-Schritte-Verfahren

SCHRITT 1: Erstellen Sie den privaten Schlüssel des Servers

openssl genrsa -out onlyoffice.key 2048

SCHRITT 2: Erstellen Sie die Zertifikatsignieranforderung (CSR)

openssl req -new -key onlyoffice.key -out onlyoffice.csr

SCHRITT 3: Signieren Sie das Zertifikat mit dem privaten Schlüssel und CSR

openssl x509 -req -days 365 -in onlyoffice.csr -signkey onlyoffice.key -out onlyoffice.crt

Sie haben jetzt ein SSL-Zertifikat generiert, das 365 Tage gültig ist.

Stärkung der Serversicherheit

Dieser Abschnitt enthält Anweisungen zur Stärkung Ihrer Serversicherheit.

Um dies zu erreichen, müssen Sie stärkere DHE-Parameter generieren.

openssl dhparam -out dhparam.pem 2048
Installation der SSL-Zertifikate

Von den vier oben generierten Dateien müssen Sie die Dateien onlyoffice.key, onlyoffice.crt und dhparam.pem auf dem onlyoffice-Server installieren. Die CSR-Datei wird nicht benötigt, aber stellen Sie sicher, dass Sie die Datei sicher sichern (falls Sie sie jemals wieder benötigen).

Der Standardpfad, den die onlyoffice-Anwendung verwendet, um nach den SSL-Zertifikaten zu suchen, ist /var/www/onlyoffice/Data/certs, dies kann jedoch mit den Konfigurationsoptionen SSL_KEY_PATH, SSL_CERTIFICATE_PATH und SSL_DHPARAM_PATH geändert werden.

Der Pfad /var/www/onlyoffice/Data/ ist der Pfad des Datenspeichers, was bedeutet, dass Sie einen Ordner namens certs innerhalb von /app/onlyoffice/DocumentServer/data/ erstellen müssen, die Dateien hinein kopieren und die Berechtigung für die Datei onlyoffice.key als Sicherheitsmaßnahme so aktualisieren, dass sie nur vom Eigentümer gelesen werden kann.

mkdir -p /app/onlyoffice/DocumentServer/data/certs
cp onlyoffice.key /app/onlyoffice/DocumentServer/data/certs/
cp onlyoffice.crt /app/onlyoffice/DocumentServer/data/certs/
cp dhparam.pem /app/onlyoffice/DocumentServer/data/certs/
chmod 400 /app/onlyoffice/DocumentServer/data/certs/onlyoffice.key

Und starten Sie den Docker-Container neu:

sudo docker restart {{DOCUMENT_SERVER_ID}}

Sie sind jetzt nur noch einen Schritt davon entfernt, unsere Anwendung zu sichern.

Verfügbare Konfigurationsparameter
Bitte beziehen Sie sich auf die Optionen des Docker-Ausführungsbefehls für das Flag --env-file, wo Sie alle erforderlichen Umgebungsvariablen in einer einzigen Datei angeben können. Dies erspart Ihnen das Schreiben eines potenziell langen Docker-Ausführungsbefehls.

Nachfolgend finden Sie die vollständige Liste der Parameter, die mithilfe von Umgebungsvariablen festgelegt werden können.

  • ONLYOFFICE_HTTPS_HSTS_ENABLED: Erweiterte Konfigurationsoption zum Ausschalten der HSTS-Konfiguration. Gilt nur, wenn SSL verwendet wird. Standardmäßig ist true.
  • ONLYOFFICE_HTTPS_HSTS_MAXAGE: Erweiterte Konfigurationsoption zum Festlegen des HSTS-Maximalalters in der onlyoffice NGINX vHost-Konfiguration. Gilt nur, wenn SSL verwendet wird. Standardmäßig ist 31536000.
  • SSL_CERTIFICATE_PATH: Der Pfad zum zu verwendenden SSL-Zertifikat. Standardmäßig ist /var/www/onlyoffice/Data/certs/tls.crt.
  • SSL_KEY_PATH: Der Pfad zum privaten Schlüssel des SSL-Zertifikats. Standardmäßig ist /var/www/onlyoffice/Data/certs/tls.key.
  • SSL_DHPARAM_PATH: Der Pfad zum Diffie-Hellman-Parameter. Standardmäßig ist /var/www/onlyoffice/Data/certs/dhparam.pem.
  • SSL_VERIFY_CLIENT: Aktivieren Sie die Überprüfung von Client-Zertifikaten mithilfe der Datei CA_CERTIFICATES_PATH. Standardmäßig ist false.
  • DB_TYPE: Der Datenbanktyp. Unterstützte Werte sind postgres, mariadb oder mysql. Standardmäßig ist postgres.
  • DB_HOST: Die IP-Adresse oder der Name des Hosts, auf dem der Datenbankserver läuft.
  • DB_PORT: Die Portnummer des Datenbankservers.
  • DB_NAME: Der Name einer Datenbank, die beim Image-Start erstellt werden soll.
  • DB_USER: Der neue Benutzername mit Superuser-Berechtigungen für das Datenbankkonto.
  • DB_PWD: Das für das Datenbankkonto festgelegte Kennwort.
  • AMQP_URI: Der AMQP URI für die Verbindung mit dem Message Broker-Server.
  • AMQP_TYPE: Der Message-Broker-Typ. Unterstützte Werte sind rabbitmq oder activemq. Standardmäßig ist rabbitmq.
  • REDIS_SERVER_HOST: Die IP-Adresse oder der Name des Hosts, auf dem der Redis-Server ausgeführt wird.
  • REDIS_SERVER_PORT: Die Portnummer des Redis-Servers.
  • REDIS_SERVER_PASS: Das Kennwort des Redis-Servers. Das Kennwort ist standardmäßig nicht festgelegt.
  • NGINX_WORKER_PROCESSES: Definiert die Anzahl der NGINX-Worker-Prozesse.
  • NGINX_WORKER_CONNECTIONS: Legt die maximale Anzahl gleichzeitiger Verbindungen fest, die von einem NGINX-Worker-Prozess geöffnet werden können.
  • SECURE_LINK_SECRET: Definiert das Geheimnis für die NGINX-Konfigurationsanweisung secure_link_md5. Standardmäßig ist random string.
  • JWT_ENABLED: Gibt die Aktivierung der JSON-Web-Token-Validierung durch ONLYOFFICE Docs an. Standardmäßig ist true.
  • JWT_SECRET: Definiert den geheimen Schlüssel zur Validierung des JSON-Web-Tokens in der Anfrage an ONLYOFFICE Docs. Standardmäßig ist secret.
  • JWT_HEADER: Definiert den HTTP-Header, der zum Senden des JSON-Webtokens verwendet wird. Standardmäßig ist Authorization.
  • JWT_IN_BODY: Gibt die Aktivierung der Token-Validierung im Anforderungstext an ONLYOFFICE Docs an. Standardmäßig ist false.
  • ALLOW_META_IP_ADDRESS: Definiert, ob die Verbindung mit der Meta-IP-Adresse zulässig ist oder nicht. Der Standardwert ist false.
  • ALLOW_PRIVATE_IP_ADDRESS: Definiert, ob die Verbindung mit einer privaten IP-Adresse zulässig ist oder nicht. Der Standardwert ist false.
  • WOPI_ENABLED: Gibt die Aktivierung der Wopi-Handler an. Standardmäßig ist false.
  • USE_UNAUTHORIZED_STORAGE: Auf true setzen, wenn Sie selbstsignierte Zertifikate für Ihren Speicherserver verwenden, z. B. Nextcloud. Standardmäßig ist false.
  • GENERATE_FONTS: Wenn true, wird die Schriftartenliste und die Miniaturansichten der Schriftarten usw. bei jedem Start neu erstellt. Standardmäßig ist true.
  • METRICS_ENABLED: Gibt das aktivierende StatsD für ONLYOFFICE Docs an. Standardmäßig ist false.
  • METRICS_HOST: Definiert den StatsD-Listening-Host. Standardmäßig ist localhost.
  • METRICS_PORT: Definiert den StatsD-Listening-Port. Standardmäßig ist 8125.
  • METRICS_PREFIX: Definiert das StatsD-Metrikpräfix für Back-End-Dienste. Standardmäßig ist ds..
  • LETS_ENCRYPT_DOMAIN: Definiert die Domäne für das Let's Encrypt-Zertifikat.
  • LETS_ENCRYPT_MAIL: Definiert die E-Mail-Adresse des Domänenadministrators für das Let's Encrypt-Zertifikat.

Registrieren Ihrer Developer Edition-Version

Wenn Sie die Developer Edition gekauft und die Datei license.lic erhalten haben, können Sie diese zu Ihrer Installation hinzufügen, um die Vollversion der Software zu erhalten.

Wenn Sie den Docker-Container verwenden, kann die Datei license.lic in einem beliebigen Ordner abgelegt werden (z. B. /app/onlyoffice/DocumentServer/data/license.lic), Sie müssen diesen Ordner jedoch beim Starten des Containers bereitstellen:

sudo docker run -i -t -d -p 80:80 --restart=always \
-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \
-e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-de:latest

Danach wird Ihre Version der Developer Edition registriert und verfügt über alle Funktionen.

Hosten ONLYOFFICE Docs auf Ihrem eigenen Server oder nutzen Sie es in der Cloud

Artikel zum Thema:
Alle Schlagwörter