﻿# Установка ONLYOFFICE Docs Server

> [HTML Version](install-onlyoffice.html)

Офисный пакет ONLYOFFICE Docs Server, как и [сервер документов Р7‑Офис](install-r7-office.md), используетя для работы онлайн. Он включает в себя просмотрщики и редакторы текстовых документов, электронных таблиц и презентаций. ONLYOFFICE Docs Server полностью совместим с форматами: **.docx**, **.xlsx**, **.pptx** и позволяет редактировать документы в режиме реального времени.

````
Начало внимание

````
Для исключения передачи конфиденциальных данных (документов) в открытом виде настройте использование протокола HTTPS на стороне ONLYOFFICE Docs Server.

````
Конец внимание

````
Установка состоит из четырёх этапов:

1. [Подготовка secret с сертификатом для работы по HTTPS](#prepare-secret).

2. [Загрузка Helm-чарта и конфигурационного файла](#download-helm-chart-and-config-file).

3. [Заполнение конфигурационного файла](#fill-config-file).

4. [Установка чарта Onlyoffice с помощью Helm в Kubernetes-кластер](#install-onlyoffice-chart).

## Шаг 1. Подготовка secret с сертификатом для работы по HTTPS

1. Создайте \[OBJECT\] с наименованием **onlyoffice**, выполнив команду:

````
kubectl create namespace onlyoffice

````
2. По статье [«Подготовка secret с сертификатом для работы по HTTPS»](preparation-secret-with-certificate-https.md) создайте в \[OBJECT\] secret с наименованием **elma365-onpremise-tls**.

Использование самоподписанного сертификата TLS с модулем OnlyOffice

  
Если вы используете самоподписанный сертификат TLS, для корректной работы модуля OnlyOffice добавьте его в список доверенных корневых центров сертификации. Для этого:

1. Преобразуйте сертификат **rootCA.pem** в файл формата **.crt**:

````
cat rootCA.pem > rootCA.crt

2. ````
Перенесите полученный файл на персональный компьютер сотрудника с операционной системой Windows и в контекстном меню файла сертификата выберите **Установить сертификат**.

3. В открывшемся окне мастера импорта сертификатов в поле **Расположение хранилища** выберите опцию **Локальный компьютер** и нажмите **Далее**.

4. Отметьте опцию **Поместить все сертификаты в следующее хранилище**, нажмите **Обзор…** и выберите папку хранилища сертификатов **Доверенные корневые центры сертификации**.  
**(install-r7-office-1.png)**

5. Нажмите **Готово**.



## Шаг 2. Загрузка Helm-чарта и конфигурационного файла

Для установки через интернет получите конфигурационный файл \[OBJECT\], выполнив команду:

````
helm repo add elma365 https://charts.elma365.tech  
helm repo update  
helm show values elma365/onlyoffice > values-onlyoffice.yaml

````
Получение конфигурационного файла для установки в закрытом контуре без доступа в интернет

1. На компьютере с доступом в интернет загрузите архив актуальной версии (latest) чарта Onlyoffice из репозитория ELMA365, выполнив следующую команду:

````
helm repo add elma365 https://charts.elma365.tech  
helm repo update  
helm pull elma365/onlyoffice

2. ````
Полученный архив чарта \[OBJECT\] скопируйте на сервер, где будет производиться установка.

3. Распакуйте этот чарт и скопируйте конфигурационный файл по умолчанию \[OBJECT\] в \[OBJECT\]:

````
tar -xf onlyoffice-X.Y.Z.tgz  
cp onlyoffice/values.yaml values-onlyoffice.yaml
````

## ````
Шаг 3. Заполнение конфигурационного файла

Заполните конфигурационный файл \[OBJECT\]:

1. Убедитесь, что в параметре \[OBJECT\] задано значение \[OBJECT\].

2. В параметрах \[OBJECT\] и \[OBJECT\] вместо значения **onlyoffice.your\_domain** укажите домен (FQDN), по которому будет доступен ONLYOFFICE Docs Server.

3. В параметре \[OBJECT\] укажите наименование secret, созданного на [шаге 1](#prepare-secret). В данной статье это значение **elma365-onpremise-tls**.

4. В параметре \[OBJECT\] укажите количество реплик для обеспечения высокой доступности.

**Важно**: если в Kubernetes кластере установлен Ingress-nginx-controller версии 1.9.0 или выше:

- в параметре \[OBJECT\] задайте наименование нужного IngressClass. Стандартное наименование: **nginx**;

- закомментируйте параметр \[OBJECT\].

````
\# Настройки onlyoffice  
onlyoffice:  
 ingress:  
   # включение host в ingress  
   enabled: true  
   className: ""  
   annotations:  
     kubernetes.io/ingress.class: nginx  
   # аннотации для работы cert-manager  
   # certmanager.io/cluster-issuer: letsencrypt  
   hosts:  
     # домен (FQDN), по которому будет доступен onlyoffice  
     - host: onlyoffice.your\_domain  
       paths:  
         - path: /  
           pathType: ImplementationSpecific  
   # включение шифрования, при использовании cert-manager указать используемый secretName letsencrypt  
   tls:  
     - secretName: elma365-onpremise-tls  
       hosts:  
         - onlyoffice.your\_domain  
 # задайте значение true, чтобы включить создание secret с собственными сертификатами  
 # укажите путь до сертификата в строках key: и cert:  
 secret:  
   enabled: false  
   key: "files/my\_cert.key"  
   cert: "files/my\_cert.crt"  
 # задайте значение true при использовании самозаверенных сертификатов для вашего хранилища  
 unautorizedStorage: false  
 # количество реплик для обеспечения высокой доступности  
 replicaCount: 1  
\# включение использования JSON веб-токена (JWT)  
  jwt:  
    enabled: false  
\# секретный ключ для проверки веб-токена JSON в запросе к документам ONLYOFFICE  
\# общий для входящих и исходящих запросов  
    secret: "MYSECRET"  
\# HTTP-заголовок, который будет использоваться для отправки веб-токена JSON  
\# общий для входящих и исходящих запросов  
    header: "Authorization"  
\# включение проверки токена в теле запроса к Документам ONLYOFFICE  
    inBody: false  
\# параметры проверки веб-токена JSON только для входящих запросов  
\# если не указано, используются значения общих параметров  
\#    inbox:  
\#      enabled: true  
\#      secret: "MYSECRET"  
\#      header: "Authorization"  
\# параметры проверки веб-токена JSON только для исходящих запросов  
\# если не указано, используются значения общих параметров  
\#    outbox:  
\#      enabled: true  
\#      secret: "MYSECRET"  
\#      header: "Authorization"  
\# включение WOPI  
  wopi:  
    enabled: false  
\# выбор образа для установки (community, enterprise)  
  edition: community  
\# при наличии файла лицензии выставить параметру enable: значение true  
\# указать путь до лицензии в строке licensePath:  
  license:  
    enable: false  
    licensePath: "files/license.lic"  
...

````
Заполнение параметров подключения файла лицензии ONLYOFFICE Docs Server

````
начало внимание

````
Подключить файл лицензии возможно при локальной установке чарта ONLYOFFICE Docs Server.

````
конец внимание

1. ````
На компьютере с доступом в интернет загрузите архив актуальной версии (latest) чарта Onlyoffice из репозитория ELMA365, выполнив следующую команду:

````
helm repo add elma365 https://charts.elma365.tech  
helm repo update  
helm pull elma365/onlyoffice

2. ````
Полученный архив чарта \[OBJECT\] скопируйте на сервер, где будет производиться установка.

3. Распакуйте чарт \[OBJECT\] на сервере, где будет производиться установка, и скопируйте конфигурационный файл по умолчанию \[OBJECT\] в \[OBJECT\]:

````
tar -xf onlyoffice-X.Y.Z.tgz  
cp onlyoffice/values.yaml values-onlyoffice.yaml

4. ````
Заполните параметры файла конфигурации \[OBJECT\], описанные на [шаге 3](#fill-config-file).

5. В конфигурационном файле \[OBJECT\] укажите тип используемого образа **enterprise**. Для параметра \[OBJECT\] задайте значение \[OBJECT\]:

````
\# Настройки onlyoffice  
onlyoffice:  
...  
  # выбор образа для установки (community, enterprise)  
  edition: enterprise  
  # при наличии файла лицензии выставить параметру enable: значение true  
  # указать путь до лицензии в строке licensePath:  
  license:  
    enable: true  
    licensePath: "files/license.lic"  
...

6. ````
Скопируйте файл лицензии в каталог с распакованным чартом Onlyoffice по пути \[OBJECT\]:

````
cp path\_to\_license\_file/license.lic onlyoffice/charts/onlyoffice/files/license.lic
````

````
Заполнение параметров подключения к приватному registry для установки в закрытом контуре без доступа в интернет

  
Для подключения к приватному **registry** нужно:

1. Скачать образы ELMA365 и загрузить их в локальный реестр образов. Подробнее об этом читайте в статье [«Загрузка образов ELMA365»](downloadin-images-elma365.md).

2. Задать адрес и путь для параметра \[OBJECT\].

3. Указать наименование секрета с правами доступа к приватному **registry** в параметре \[OBJECT\]. Секрет должен быть создан вручную и зашифрован в Base64.

````
\# Настройки onlyoffice  
onlyoffice:  
...  
  # параметры подключения к приватному registry  
  image:  
    # адрес и путь для приватного registry  
    repository: registry.example.com/onlyoffice/documentserver-ee  
    tag: "7.4.0.1"  
  # секрет с правами доступа к приватному registry должен быть создан вручную, зашифрованный в Base64e  
  pullSecrets:  
    - myRegistryKeySecretName

````
  
Где формат **repository**:

- адрес — \[OBJECT\];

- путь — \[OBJECT\].

## Шаг 4. Установка чарта ONLYOFFICE Docs Server с помощью Helm в Kubernetes-кластер 

Выполните установку чарта Onlyoffice в \[OBJECT\].

Для установки через интернет:

````
helm upgrade --install onlyoffice elma365/onlyoffice -f values-onlyoffice.yaml -n onlyoffice 

````
Для офлайн-установки без доступа в интернет перейдите в каталог с загруженным чартом и выполните команду:

````
helm upgrade --install onlyoffice ./onlyoffice -f values-onlyoffice.yaml -n onlyoffice

Начало внимание

````
Установка компонента дополнений ONLYOFFICE Docs Server автоматически не включает интеграцию сервера документов с приложением ELMA365.

````
Конец внимание

````
После установки нужно выполнить интеграцию сервера документов ONLYOFFICE Docs Server с [модулем OnlyOffice](onlyoffice.md) в приложении ELMA365.

Для полноценной работы приобретите [лицензию на ONLYOFFICE Docs Server](https://www.onlyoffice.com/ru/docs-enterprise-prices.aspx).

## Удалить чарт ONLYOFFICE Docs Server с помощью Helm в Kubernetes-кластере

````
Начало внимание

````
Перед удалением компонента дополнений ONLYOFFICE Docs Server отключите использование [модуля OnlyOffice](onlyoffice.md) в приложении ELMA365.

````
Конец внимание

````
Чтобы удалить чарт Onlyoffice в \[OBJECT\], выполните команду:

````
helm uninstall onlyoffice -n onlyoffice
````