Установка ONLYOFFICE Docs на CentOS и производные
Введение
Community Edition позволяет установить ONLYOFFICE Docs на локальном сервере и интегрировать онлайн-редакторы с платформой для совместной работы ONLYOFFICE или другими популярными системами. Это позволит организовать совместный доступ к файлам, управлять правами доступа к документам, встраивать документы в сайт, а также редактировать файлы, сохраненные в сервисах Drive, Box, Dropbox, OneDrive или ownCloud, подключенных к ONLYOFFICE (смотрите подробный список возможностей). В данной инструкции объясняется, как установить на компьютере версию ONLYOFFICE Docs Community Edition для Linux.
Системные требования
- Процессор: двухъядерный с тактовой частотой 2 ГГц или лучше
- Оперативная память: не менее 2 ГБ, но это зависит от ОС хоста. Чем больше, тем лучше
- Жесткий диск: не менее 40 ГБ свободного места
- SWAP: не менее 4 ГБ, но это зависит от ОС хоста. Чем больше, тем лучше
- ОС: CentOS Stream 9, RHEL 8 или RHEL 9
- Дополнительные требования
- NGINX: версия 1.30 или выше
Установка зависимостей
Установка актуальной версии пакетов NGINX
Для настройки репозитория yum для RHEL/CentOS необходимо создать файл с именем /etc/yum.repos.d/nginx.repo и таким содержимым:
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
Установите NGINX:
sudo yum install nginx
После этого отредактируйте конфигурационный файл NGINX /etc/nginx/nginx.conf, чтобы он выглядел следующим образом:
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
}
Если вы планируете запускать ONLYOFFICE Docs на порту 80, отключите сейчас сайт NGINX по умолчанию. В противном случае ONLYOFFICE Docs может работать некорректно. Для этого выполните следующие команды:
sudo mv -f /etc/nginx/sites-enabled/default /etc/nginx/sites-available/default.disabled
sudo mv -f /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.disabled
sudo systemctl is-active --quiet nginx && sudo systemctl reload nginx || sudo systemctl start nginx
В зависимости от того, как был установлен NGINX, одна из первых двух команд может сообщить, что файл не существует. Это сообщение можно спокойно проигнорировать.
Установка репозитория EPEL
sudo yum install epel-release
Для установки EPEL на CentOS 9 используйте следующие команды:
sudo yum config-manager --set-enabled crb
sudo yum install epel-release epel-next-release
Для установки EPEL на RHEL используйте следующие команды:
sudo subscription-manager repos --enable codeready-builder-for-rhel-$REV-$(arch)-rpms
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-$REV.noarch.rpm
Вручную замените $REV на версию вашей ОС (7 для версий 7.x, 8 для версий 8.x, 9 для версий 9.x и т.д.).
Добавление репозитория ONLYOFFICE Docs
Добавьте yum-репозиторий ONLYOFFICE Docs с помощью следующей команды:
sudo yum install https://download.onlyoffice.com/repo/centos/main/noarch/onlyoffice-repo.noarch.rpm
Установка mscorefonts
Установите пакеты cabextract и xorg-x11-font-utils:
sudo yum install cabextract xorg-x11-font-utils
Для CentOS 7.8(2003) также требуется fontconfig:
sudo yum install fontconfig
Установите пакет шрифтов msttcore:
sudo rpm -i https://sourceforge.net/projects/mscorefonts2/files/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm
Установка ONLYOFFICE Docs
Выполните следующую команду для версии Community:
sudo yum install onlyoffice-documentserver
Запустите сервис nginx и добавьте его в автозагрузку:
sudo service nginx start
sudo systemctl enable nginx
После этого ONLYOFFICE Docs будет запущен как процесс. Пакет будет обновляться, как любой другой rpm-пакет.
Обновление ONLYOFFICE Docs
Чтобы обновить ONLYOFFICE Docs, выполните следующую команду:
sudo yum update onlyoffice-documentserver
В RHEL 8 и производных от него дистрибутивах выполнение команды yum update при подключенном репозитории ONLYOFFICE может завершиться ошибкой зависимостей.
Чтобы этого избежать, исключите следующие пакеты из репозитория ONLYOFFICE, чтобы они устанавливались из системного репозитория AppStream:
echo "excludepkgs=xorg-x11-server-Xvfb,xorg-x11-server-common" >> /etc/yum.repos.d/onlyoffice.repo
Эту команду достаточно выполнить один раз. После этого yum update будет работать как положено.
Если вы установили ONLYOFFICE Docs с помощью OneClick Install, это исключение уже применено автоматически.
Смена порта для ONLYOFFICE Docs, используемого по умолчанию
По умолчанию ONLYOFFICE Docs слушает входящие соединения на порту 8083. Начиная с версии 4.3 вы можете сменить порт для ONLYOFFICE Docs в случае, если вы планируете использовать его вместо того, который идет по умолчанию.
Если вы меняете порт по умолчанию, убедитесь, что он открыт для входящих/исходящих соединений. Посмотрите полный список портов, которые используются ONLYOFFICE Docs.
Для этого вам нужно отредактировать переменную окружения DS_PORT с помощью команды:
export DS_PORT=<PORT_NUMBER>
Вместо <PORT_NUMBER> в команде выше необходимо вписать номер порта, который будет использоваться.
Если вы указываете порт 80, убедитесь, что вы отключили сайт NGINX по умолчанию, как описано в разделе Установка актуальной версии пакетов NGINX.
Если вы хотите поменять протокол ONLYOFFICE Docs на HTTPS, не меняйте порт на 443, а воспользуйтесь этой инструкцией.
После этого можно продолжить настройку ONLYOFFICE Docs.
Настройка ONLYOFFICE Docs
Запустите скрипт конфигурации
Запустите скрипт documentserver-configure:
bash documentserver-configure
Добавьте исключение межсетевого экрана
sudo firewall-cmd --zone=public --add-port=8083/tcp --permanent
sudo firewall-cmd --reload
Отключите SELinux
не используется с версии 5.0
Откройте файл /etc/selinux/config в любом текстовом редакторе, замените строку SELINUX=enforcing или SELINUX=permissive на следующую: SELINUX=disabled. Сохраните изменения.
Перезагрузите сервер, чтобы изменения вступили в силу.
В целях безопасности, начиная с версии 8.1, при запуске скрипта documentserver-configure в local.json генерируются новые WOPI-ключи. Если вы используете WOPI-подключение, необходимо запустить скрипт после обновления ONLYOFFICE Docs:
documentserver-configure --wopienabled true
Запуск ONLYOFFICE Docs в браузере
После завершения настройки вы можете ввести http://localhost:8083 в адресной строке браузера, чтобы открыть страницу приветствия ONLYOFFICE Docs, где приводятся дальнейшие инструкции о том, как подключить примеры документов или интегрировать онлайн-редакторы в веб-приложение с помощью API.
Чтобы подключить ONLYOFFICE Docs к ONLYOFFICE Workspace, обратитесь к этой инструкции.