Compiler ONLYOFFICE Docs sur un serveur local

Introduction

ONLYOFFICE Docs est une suite bureautique complète comportant des visionneuses, des éditeurs de texte, classeurs et présentations complètement compatibles avec les formats Office Open XML: .docx, .xlsx, .pptx permettant l'édition collaborative en temps réel.

Vous pouvez facilement compiler ONLYOFFICE Docs depuis les sources et déployer la solution sur votre serveur local à l'aide de build_tools spécialement conçus à cette fin. Les outils build_tools permettent d'obtenir et d'installer automatiquement tous les composants primordiaux du processus de compilation, toutes les dépendances requises pour un emploi adéquat d'ONLYOFFICE Docs aussi que d'obtenir la dernière version du code source d'ONLYOFFICE Docs et de réaliser tous ses composants.

Important! Nous garantissons donc le bon fonctionnement des produits qu'à condition que ceux-ci soient créés à partir de la branche master .
Configuration système minimale

Matériel

  • Processeur (CPU): double cœur à 2 GHz ou plus
  • RAM: d'au moins 2 Go, mais cela dépend du système d'exploitation hôte. Plus il y en a, mieux c'est
  • HDD: disque dur d'au moins 40 Go d'espace disponible
  • SWAP: d'au moins 4 Go, mais cela dépend du système d'exploitation hôte. Plus il y en a, mieux c'est

Logiciels

  • Système d'exploitation: Ubuntu 16.04 édition 64 bits
La solution a été testée sur Ubuntu 16.04. Des autres distributions peuvent nécessiter des manipulations spécifiques qui ne sont pas décrites ici.

Installer des dépendances

Il faut installer Python et Git si ce logiciel n'est pas encore installé sur votre ordinateur. Pour ce faire, utilisez la commande suivante:

sudo apt-get install -y python git

Construire ONLYOFFICE Docs à partir du code source

  1. Cloner le dépôt build_tools:
    git clone https://github.com/ONLYOFFICE/build_tools.git
  2. Passez au répertoire build_tools/tools/linux :
    cd build_tools/tools/linux
  3. Exécutez le script automate.py en spécifiant le paramètre de server pour compiler ONLYOFFICE Docs:
    ./automate.py server
    Si vous exécutez le script et ne définissez aucun de ces paramètres, la réalisation d'ONLYOFFICE Docs va de pair avec la réalisation du Générateur de documents et des Éditeurs de documents.
    ./automate.py
    Le cas échéant, vous pouvez construire plusieurs produits à la fois en exécutant le script avec les paramètres appropriés au produit nécessaire. Pour en savoir plus sur la compilation du Générateur de documents, veuillez consulter cet article. Pour en savoir plus sur la compilation des Éditeurs de documents, veuillez consulter cet article.

Attendez que l'exécution du script soit terminée. Ce processus peut prendre un temps considérable en fonction de la configuration de votre ordinateur. Par exemple, il faut au moins 3 heures pour terminer cette procédure sur Intel Core i7-7700.

Le script va compiler toutes les dépendances et les composants lesquels font partie d'ONLYOFFICE Docs.

La compilation ONLYOFFICE Docs sera disponible dans le répertoire ../../out/linux_64/onlyoffice/documentserver/ .

Installer et configurer NGINX, PostgreSQL et RabbitMQ

ONLYOFFICE Docs utilise le serveur Web NGINX et la base de données PostgreSQL . Il faudra également utiliserRabbitMQ pour garantir un bon fonctionnement O'ONLYOFFICE Docs.

Installer et configurer NGINX
  1. Installer NGINX:
    sudo apt-get install nginx
  2. Désactivez le site par défaut:
    sudo rm -f /etc/nginx/sites-enabled/default
  3. Il vous faut maintenant configurer le nouveau site. Pour ce faire, créez un fichier /etc/nginx/sites-available/onlyoffice-documentserver dont le contenu est le suivant:
    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;
      }  
    }
  4. Ajoutez le lien symbolique au nouveau site vers le répertoire /etc/nginx/sites-available :
    sudo ln -s /etc/nginx/sites-available/onlyoffice-documentserver /etc/nginx/sites-enabled/onlyoffice-documentserver
  5. Redémarrez NGINX pour que ces modifications prennent effet:
    sudo nginx -s reload
Installer et configurer PostgreSQL

Installez PostgreSQL en utilisant la commande suivante:

sudo apt-get install postgresql

Lors de l'installation de PostgreSQL, exécutez les commandes suivantes pour créer la base de données et l'utilisateur PostgreSQL:

Il faut définir onlyoffice en tant que le nom utilisateur et le mot de passe de la base de données.
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;";

Exécutez la commande suivante pour configurer la base de données:

psql -hlocalhost -Uonlyoffice -d onlyoffice -f ../../out/linux_64/onlyoffice/documentserver/server/schema/postgresql/createdb.sql
Une fois terminé, il vous sera demandé de fournir le mot de passe de l'utilisateur onlyoffice PostgreSQL. Veuillez saisir le mot de passe onlyoffice .
Installer RabbitMQs

Installez RabbitMQ en utilisant la commande suivante:

sudo apt-get install rabbitmq-server
Générer des données de polices
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";
Générer des thèmes de présentation
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";

Lancer ONLYOFFICE Docs

Tous les composants ONLYOFFICE Docs s'exécutent en avant-plan. Alors, il faut séparer la console en différents terminaux pour les exécuter ou utiliser des outils spécifiques permettant de renvoyer le processus en arrière plan.
  1. Démarrez le service FileConverter:
    cd out/linux_64/onlyoffice/documentserver/server/FileConverter
    LD_LIBRARY_PATH=$PWD/bin NODE_ENV=development-linux NODE_CONFIG_DIR=$PWD/../Common/config ./converter
  2. Démarrez le service SpellChecker:
    cd out/linux_64/onlyoffice/documentserver/server/DocService
    NODE_ENV=development-linux NODE_CONFIG_DIR=$PWD/../Common/config ./docservice

Hébergez ONLYOFFICE Docs sur votre serveur ou utilisez dans le cloud

Articles avec le tag :
Parcourir tous les tags