- Startseite
- Docs
- Installation und Konfiguration
- Installation und Konfiguration
- Docker-Version
- Installieren von ONLYOFFICE Docs Enterprise Edition für Docker auf KylinOS
Installieren von ONLYOFFICE Docs Enterprise Edition für Docker auf KylinOS
Einleitung
Mit der Enterprise Edition können Sie ONLYOFFICE Docs auf Ihrem lokalen Server installieren und Online-Editoren in die ONLYOFFICE-Kollaborationsplattform oder andere beliebte Systeme integrieren.
ONLYOFFICE Docs ist eine Online-Office-Suite mit Viewern und Editoren für Texte, Tabellen und Präsentationen, die vollständig mit den Office Open XML-Formaten .docx, .xlsx, .pptx kompatibel ist und die 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 Enterprise Edition verfügbar sind.
Wenn Sie es in ONLYOFFICE Workspace verwenden, können Sie:
- Dateien freigeben;
- Zugriffsrechte auf Dokumente verwalten;
- Dokumente auf einer Website einbetten;
- Dateien anzeigen und bearbeiten, die auf Drive, Box, Dropbox, OneDrive, ownCloud gespeichert sind und mit ONLYOFFICE verbunden sind.
Ab Version 7.2 wurden die Docker-Images von ONLYOFFICE Docs für die Ausführung unter Kylin Linux Advanced Server OS Version V10 überarbeitet. Diese Anleitung zeigt Ihnen, wie Sie die Docker-Version von ONLYOFFICE Docs Enterprise Edition unter KylinOS installieren.
Systemanforderungen
- CPUDual-Core 2 GHz oder besser
- RAM4 GB oder mehr
- HDDmindestens 40 GB freier Speicherplatz
- SWAPmindestens 4 GB, hängt aber vom Host-Betriebssystem ab. Mehr ist besser
- OSamd64 Linux-Distribution mit Kernel-Version 3.10 oder höher
- Docker: jede von KylinOS unterstützte Version
Installation von ONLYOFFICE Docs
/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:
-
Erstellen Sie die Konfigurationsdatei
/etc/docker/daemon.json
mit folgendem Inhalt:{ "dns" : [ "8.8.8.8" ] }
-
Starten Sie den Docker-Dienst neu:
sudo systemctl restart docker.service
SELinux deaktivieren
Sie müssen SELinux in der Konfigurationsdatei /etc/selinux/config
deaktivieren.
Öffnen Sie die Datei /etc/selinux/config
mit einem beliebigen Texteditor, ersetzen Sie die Zeichenfolge SELINUX=enforcing
oder SELINUX=permissive
durch die Zeichenfolge SELINUX=disabled
und speichern Sie die Änderungen.
Starten Sie Ihren Server neu, damit die Änderungen wirksam werden. Stellen Sie sicher, dass SELinux deaktiviert ist:
[root@test ~]# sestatus
SELinux status: disabled
ONLYOFFICE Docs installieren
Führen Sie den folgenden Befehl aus, um ONLYOFFICE Docs zu installieren:
sudo docker run -i -t -d -p 80:80 --security-opt seccomp=unconfined --restart=always -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-ee
-e JWT_SECRET=my_jwt_secret
an.
Wenn Sie in Ihrer Installation kein JWT verwenden, verwenden Sie -e JWT_ENABLED=false
.
Der Schlüssel --security-opt seccomp=unconfined
ist erforderlich, um Sicherheitsprofile für den Container zu deaktivieren. Weitere Details finden Sie hier.
Sie können auch unser benutzerdefiniertes Sicherheitsprofil verwenden: kylin-seccomp7.json.
sudo docker run -i -t -d -p <PORT_NUMBER>:80 --security-opt seccomp=unconfined --restart=always -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-ee
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).
Hinzufügen einer Firewall-Ausnahme
Sie müssen außerdem eine Ausnahme zum Dienst firewalld.service
hinzufügen:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --reload
Sobald die Konfiguration abgeschlossen ist, können Sie http://localhost in die Adressleiste Ihres Browsers eingeben, um die Willkommensseite von ONLYOFFICE Docs zu öffnen. Dort finden Sie weitere Anweisungen zum Aktivieren von Dokumentbeispielen oder zum Integrieren von Online-Editoren in Ihre Webanwendung mithilfe der bereitgestellten API.
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
Um Zugriff auf Ihre Daten zu erhalten, die sich außerhalb des Containers befinden, müssen Sie die Volumes mounten. Dies kann durch Angabe der Option -v in docker run erfolgen.
sudo docker run -i -t -d -p 80:80 --security-opt seccomp=unconfined --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-ee
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 --security-opt seccomp=unconfined --restart=always \
-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-ee
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 --security-opt seccomp=unconfined --restart=always \
-e LETS_ENCRYPT_DOMAIN=yourdomain.com -e LETS_ENCRYPT_MAIL=email@example.com -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-ee
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://yourdomain.com verfügbar sein.
Generierung von selbst signierten 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
--env-file
, wo Sie alle erforderlichen Umgebungsvariablen in einer einzigen Datei angeben können. Dies erspart Ihnen das Schreiben eines möglicherweise 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. Der Standardwert ist
true
. - ONLYOFFICE_HTTPS_HSTS_MAXAGE: Erweiterte Konfigurationsoption zum Festlegen des HSTS max-age 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 Clientzertifikaten mithilfe der Datei
CA_CERTIFICATES_PATH
. Standardmäßig istfalse
. - DB_TYPE: Der Datenbanktyp. Unterstützte Werte sind
postgres
,mariadb
odermysql
. Standardmäßig istpostgres
. - 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: AMQP URI zum Herstellen einer Verbindung mit dem Message Broker-Server.
- AMQP_TYPE: Der Nachrichtenbrokertyp. Unterstützte Werte sind
rabbitmq
oderactivemq
. Standardmäßig istrabbitmq
. - 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.
- NGINX_WORKER_PROCESSES: Definiert die Anzahl der NGINX-Worker-Prozesse.
- NGINX_WORKER_CONNECTIONS: Legt die maximale Anzahl gleichzeitiger Verbindungen fest, die von einem NGINX-Workerprozess 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-Webtoken-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 wird ein zufälliger Wert verwendet.
- 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 Tokenvalidierung im Anfragetext an ONLYOFFICE Docs an. Standardmäßig ist
false
. - WOPI_ENABLED: Gibt die Aktivierung der WOPI-Handler an. Der Standardwert ist
false
. - USE_UNAUTHORIZED_STORAGE: Auf
true
setzen, wenn Sie selbstsignierte Zertifikate für Ihren Speicherserver verwenden, z. B. Nextcloud. Standardmäßig ist der Wertfalse
. - GENERATE_FONTS: Wenn auf
true
gesetzt ist, werden die Schriftartenliste und die Thumbnails der Schriftarten usw. bei jedem Start neu generiert. Standardmäßig isttrue
. - METRICS_ENABLED: Gibt die Aktivierung von 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-Host. Standardmäßig ist
8125
. - METRICS_PREFIX: Definiert das StatsD-Metrikenpräfix für Backend-Dienste. Standardmäßig ist
ds.
- LETS_ENCRYPT_DOMAIN: Definiert die Domain für das Let's Encrypt-Zertifikat.
- LETS_ENCRYPT_MAIL: Definiert die E-Mail-Adresse des Domainadministrators für das Let's Encrypt-Zertifikat.
Registrieren Ihrer Enterprise Edition-Version
Wenn Sie die Enterprise Edition gekauft und die Datei license.lic erhalten haben, können Sie sie in Ihre Installation einfü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
), aber Sie müssen diesen Ordner beim Start des Containers bereitstellen:
sudo docker run -i -t -d -p 80:80 --security-opt seccomp=unconfined --restart=always \
-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \
-e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-ee
Danach wird Ihre Version der Enterprise Edition registriert und mit vollem Funktionsumfang ausgestattet.