Установка ONLYOFFICE Docs Community Edition на Debian 12
ONLYOFFICE Docs — это бесплатный программный офисный пакет и экосистема приложений для совместной работы.
Хоть и официальный мануал по установке достаточно хорошо читаем, я все же для себя детально по шагам разберу установку ONLYOFFICE Docs на Debian 12 и настройку связки с Nextcloud.
Установка зависимостей
Для установки пакета — ttf-mscorefonts-installer
необходимо включение дополнительных Contrib
и Non-Free
репозиториев.
echo "deb http://deb.debian.org/debian/ bookworm contrib non-free" | tee -a /etc/apt/sources.list
sudo apt-get update
Устанавливаем необходимые зависимости.
sudo apt-get install libcurl4 libxml2 curl gnupg2 libstdc++6 fonts-dejavu fonts-liberation ttf-mscorefonts-installer fonts-crosextra-carlito fonts-takao-gothic fonts-opensymbol nginx-extras -y
RabbitMQ
RabbitMQ
— это брокер сообщений с открытым исходным кодом, который реализует протокол AMQP (Advanced Message Queuing Protocol).
sudo apt-get install rabbitmq-server -y
PostgreSQL
Установите версию PostgreSQL.
sudo apt-get install postgresql -y
После установки PostgreSQL создайте базу данных и пользователя PostgreSQL.
sudo -Hiu postgres psql -c "CREATE USER onlyoffice WITH PASSWORD 'onlyoffice';"
sudo -Hiu postgres psql -c "CREATE DATABASE onlyoffice OWNER onlyoffice;"
onlyoffice
. Пароль можно задать любой.Установка ONLYOFFICE Docs
Добавляем GPG-ключ.
mkdir -p -m 700 ~/.gnupg
curl -fsSL https://download.onlyoffice.com/GPG-KEY-ONLYOFFICE | gpg --no-default-keyring --keyring gnupg-ring:/tmp/onlyoffice.gpg --import
chmod 644 /tmp/onlyoffice.gpg
sudo chown root:root /tmp/onlyoffice.gpg
sudo mv /tmp/onlyoffice.gpg /usr/share/keyrings/onlyoffice.gpg
Добавляем репозиторий ONLYOFFICE Docs.
echo "deb [signed-by=/usr/share/keyrings/onlyoffice.gpg] https://download.onlyoffice.com/repo/debian squeeze main" | sudo tee /etc/apt/sources.list.d/onlyoffice.list
Устанавливаем ONLYOFFICE Docs.
apt-get update && apt-get install onlyoffice-documentserver -y
onlyoffice
в PostgreSQL. Введите пароль onlyoffice
, который был задан при настройке PostgreSQL.По адресу — http://<server_name>
доступна страница приветствия ONLYOFFICE Docs, где приводятся дальнейшие инструкции о том, как интегрировать ONLYOFFICE Docs в веб-приложения и как протестировать работу ONLYOFFICE Docs.
Настройка ONLYOFFICE Docs — HTTPS
Для последующей настройки связки с Nextcloud, необходимо настроить ONLYOFFICE Docs на работу по протоколу HTTPS. Выполним настройку.
Скопируем файл ds-ssl.conf.tmpl
в файл ds.conf
с помощью следующей команды
cp -f /etc/onlyoffice/documentserver/nginx/ds-ssl.conf.tmpl /etc/onlyoffice/documentserver/nginx/ds.conf
Зададим параметры для конфигурации ds.conf
SERVERNAME
— Указываем DNS имя вашего экземпляра ONLYOFFICE Docs.SSL_CERT
— Путь к файлу сертификата.SSL_PKEY
— Путь к файлу закрытого ключа сертификата.
export SERVERNAME=<dns_server_name>
export SSL_CERT=/etc/ssl/fullchain.pem
export SSL_PKEY=/etc/ssl/privkey.pem
sed -i "s/server_name _;/server_name $SERVERNAME;/g; s|{{SSL_CERTIFICATE_PATH}}|$SSL_CERT|g; s|{{SSL_KEY_PATH}}|$SSL_PKEY|g" /etc/onlyoffice/documentserver/nginx/ds.conf
Запустим следующий скрипт, для того чтобы внести необходимые правки в файл ds.conf
bash /usr/bin/documentserver-update-securelink.sh
Проверим статус службы и состояние сервера:
systemctl status ds-docservice
systemctl status ds-converter
bash /usr/bin/documentserver-jwt-status.sh
Your JWT settings:
JWT enabled - true
JWT secret - TuFVcNHa2YJzBciUh6lXqIbFAnTM5HpR
JWT header - Authorization
JWT secret
+ JWT header
, необходимы для подключения ONLYOFFICE Docs к внешним системам, таким как Nextcloud.Настройка ONLYOFFICE Docs в Nextcloud
Теперь можно использовать сервер ONLYOFFICE Docs в Nextcloud.
Где:
Адрес ONLYOFFICE Docs
— указываем DNS имя сервера которое задавали в файлеds.conf
в директивеserver_name
Секретный ключ
— указываем secret полученный при выполнении/usr/bin/documentserver-jwt-status.sh
Дополнительно (дополняемая)
Ниже буду дописывать какие то моменты которые могут пригодится в обслуживании ONLYOFFICE Docs.
Как изменить секретный ключ
В файле /etc/onlyoffice/documentserver/local.json в секциях secret
— {inbox, outbox, session
} в полях string
указываем желаемый секретный ключ (должен быть одинаковый во всех трех строках).
"secret": {
"inbox": {
"string": "DbNCGPIT9Vqv53hmuAMuMIhl9m8PsEAiey54u7zX"
},
"outbox": {
"string": "DbNCGPIT9Vqv53hmuAMuMIhl9m8PsEAiey54u7zX"
},
"session": {
"string": "DbNCGPIT9Vqv53hmuAMuMIhl9m8PsEAiey54u7zX"
}
После внесения изменений, необходимо перезапустить службу ds-docservice
systemctl restart ds-docservice
Корректное отключение пользователей ONLYOFFICE Docs
Чтобы избежать потери данных, при необходимости остановить ONLYOFFICE Docs в случаях обновления приложения, перезагрузки сервера и т.п. необходимо принудительно отключить пользователей ONLYOFFICE Docs.
bash /usr/bin/documentserver-prepare4shutdown.sh
Чтобы все заработало обратно, в случае если не было перезагрузки системы, то просто перезапускаем службы ONLYOFFICE Docs.
systemctl status ds-docservice
systemctl status ds-converter
Отключение страницы приветствия
Если необходимо отключить страницу приветствия, то нужно в файле — /etc/onlyoffice/documentserver/nginx/includes/ds-docservice.conf
закоментировать отмеченную строку и добавить ниже следующие:
#welcome page
#rewrite ^/$ $the_scheme://$the_host$the_prefix/welcome/ redirect;
rewrite ^/welcome $the_scheme://$the_host redirect;
location = / {
return 404;
}
После внесения изменений, перезапускаем nginx — systemctl reload nginx
Обсуждение
Нет комментариев.