Как скомпилировать Сервер документов ONLYOFFICE из исходного кода в Ubuntu
На этой странице
- Шаг 1. Установите зависимости
- Шаг 2. Создайте исходный код Сервера документов
- Шаг 3. Установите и настройте NGINX, PostgreSQL и RabbitMQ.
- 1. Установить и настроить NGINX
- 2. Установите и настройте PostgreSQL.
- 3. Установите RabbitMQ
- Шаг 4. Создание данных шрифтов
- Шаг 5. Создание тем для презентаций
- Шаг 6. Запустите Сервер документов
ONLYOFFICE Document Server включает веб-средства просмотра и редакторы для совместной работы с текстовыми документами, электронными таблицами и презентациями, обеспечивающие высокую совместимость с форматами OOXML (docx, xlsx, pptx). Пакет распространяется под GNU AGPL v3.0.
ONLYOFFICE Document Server можно интегрировать с различными платформами облачного хранения, такими как Nextcloud, ownCloud, Seafile, HumHub, Plone и т. д., а также в решение, которое вы создаете самостоятельно. Сервер документов можно использовать как часть ONLYOFFICE Community Edition — бесплатного решения с открытым исходным кодом, включающего онлайн-редакторы и платформу для совместной работы.
Инструменты сборки позволяют пользователям автоматически устанавливать все необходимые компоненты и компилировать последнюю версию онлайн-редакторов из исходного кода.
В этом руководстве мы узнаем, как скомпилировать Сервер документов ONLYOFFICE для вашей установки Ubuntu (64-разрядная версия Ubuntu).
Системные Требования
- ЦП: двухъядерный с тактовой частотой 2 ГГц или лучше.
- ОЗУ: 2 ГБ или больше.
- Жесткий диск: не менее 40 ГБ свободного места.
- Не менее 4 ГБ подкачки
Шаг 1: Установите зависимости
Если Python и Git не установлены на вашем компьютере, установите их с помощью следующей команды:
sudo apt-get install -y python git
Шаг 2. Создайте исходный код Сервера документов
Клонируйте репозиторий build_tools:
git clone https://github.com/ONLYOFFICE/build_tools.git
Перейдите в соответствующий каталог:
cd build_tools/tools/linux
Запустите скрипт:
./automate.py server
После этого созданный Сервер документов будет доступен в каталоге ../../out/linux_64/onlyoffice/documentserver/.
Шаг 3. Установите и настройте NGINX, PostgreSQL и RabbitMQ.
Сервер документов использует NGINX в качестве веб-сервера и PostgreSQL в качестве базы данных. RabbitMQ также требуется для корректной работы.
1. Установите и настройте NGINX
Установите NGINX с помощью этой команды:
sudo apt-get install nginx
Отключить веб-сайт по умолчанию:
sudo rm -f /etc/nginx/sites-enabled/default
Настройте новый веб-сайт. Создайте файл /etc/nginx/sites-available/onlyoffice-documentserver, содержащий следующие данные:
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;
}
location /spellchecker/ {
proxy_pass http://localhost:8080/;
proxy_http_version 1.1;
}
}Добавьте символическую ссылку на только что созданный веб-сайт в каталог /etc/nginx/sites-available:
sudo ln -s /etc/nginx/sites-available/onlyoffice-documentserver /etc/nginx/sites-enabled/onlyoffice-documentserver
Перезапустите NGINX:
sudo nginx -s reload
2. Установите и настройте PostgreSQL
Установите PostgreSQL:
sudo apt-get install postgresql
Создайте базу данных PostgreSQL и пользователя (введите «onlyoffice» как для пользователя, так и для пароля):
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;"Настройте базу данных:
psql -hlocalhost -Uonlyoffice -d onlyoffice -f ../../out/linux_64/onlyoffice/documentserver/server/schema/postgresql/createdb.sql
Приведенная выше команда состоит из одной строки! Введите пароль onlyoffice, когда вас попросят указать пароль для пользователя onlyoffice PostgreSQL.
3. Установите RabbitMQ
Установите RabbitMQ с помощью следующей команды:
sudo apt-get install rabbitmq-server
Шаг 4: Генерация данных шрифтов
Выполните команды:
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"Шаг 5: Создайте темы презентации
Выполните следующие команды:
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"Шаг 6: Запустите Сервер документов
Все компоненты ONLYOFFICE Document Server работают как процессы переднего плана. Вам нужно разделить консоли терминала, чтобы запускать их или запускать определенные инструменты, которые позволяют запускать процессы переднего плана в фоновом режиме.
Запустите службу 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Запустите службу проверки орфографии:
cd out/linux_64/onlyoffice/documentserver/server/SpellChecker
NODE_ENV=development-linux NODE_CONFIG_DIR=$PWD/../Common/config ./spellcheckerЗапустите службу DocService:
cd out/linux_64/onlyoffice/documentserver/server/DocService
NODE_ENV=development-linux NODE_CONFIG_DIR=$PWD/../Common/config ./docserviceВот и все! Теперь вы можете выбрать один из вариантов использования ONLYOFFICE Document Server (онлайн-редакторов), описанных во введении: интегрированный с любым облачным сервисом хранения, или интегрированный в ваше собственное решение, или совместно с ONLYOFFICE Community Server.