Instalación de ONLYOFFICE Docs Developer Edition para CentOS y derivados
Introducción
Developer Edition te permite instalar ONLYOFFICE Docs en tu servidor local e integrar los editores en línea con tu aplicación web (consulta la lista detallada de características). Esta guía te mostrará cómo instalar la versión para Linux de ONLYOFFICE Docs Developer Edition en tu máquina.
Requisitos del sistema
- CPU: doble núcleo 2 GHz o mejor
- RAM: al menos 2 GB, pero depende del sistema operativo anfitrión. Más es mejor
- HDD: al menos 40 GB de espacio libre
- SWAP: al menos 4 GB, pero depende del sistema operativo anfitrión. Más es mejor
- OS: CentOS Stream 9, RHEL 8, o RHEL 9
- Requisitos adicionales:
- PostgreSQL: versión 12.9 o posterior
- NGINX: versión 1.3.13 o posterior
- Redis: versión 5 o posterior
- RabbitMQ
Instalación de dependencias
Instalación de la versión actualizada del paquete NGINX
Para configurar el repositorio yum para RHEL/CentOS, crea el archivo llamado /etc/yum.repos.d/nginx.repo con el siguiente contenido:
[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
Instala NGINX:
sudo yum install nginx
Después de eso, edita el archivo de configuración /etc/nginx/nginx.conf de NGINX, para que se vea de la siguiente manera:
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;
}
Si planeas ejecutar ONLYOFFICE Docs en el puerto 80, desactiva ahora el sitio web predeterminado de NGINX. De lo contrario, ONLYOFFICE Docs puede no funcionar correctamente. Para hacerlo, ejecuta los siguientes comandos:
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
Dependiendo de cómo se haya instalado NGINX, uno de los dos primeros comandos puede informar que el archivo no existe. Puedes ignorar este mensaje sin problema.
Instalación del repositorio EPEL
sudo yum install epel-release
Para instalar EPEL en CentOS 9, utiliza los siguientes comandos:
sudo yum config-manager --set-enabled crb
sudo yum install epel-release epel-next-release
Para instalar EPEL en RHEL, utiliza los siguientes comandos:
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
Cambia $REV a la versión de tu sistema operativo manualmente (7 para versiones 7.x, 8 para versiones 8.x, 9 para versiones 9.x y así sucesivamente).
Instalación y configuración de PostgreSQL
Instala la versión de PostgreSQL incluida en tu versión de CentOS:
sudo yum install postgresql postgresql-server
Si deseas instalar alguna otra versión de PostgreSQL desde el Repositorio de PostgreSQL, por favor consulta la documentación oficial de PostgreSQL para más detalles.
Inicializa la base de datos de PostgreSQL
sudo service postgresql initdb
sudo chkconfig postgresql on
En CentOS 9, chkconfig no está instalado por defecto. Instálalo usando el siguiente comando:
sudo yum install chkconfig
Activa el método de autenticación 'scram-sha-256' para localhost IPv4 e IPv6
Abre el archivo /var/lib/pgsql/data/pg_hba.conf en un editor de texto.
Encuentra la cadena host all all 127.0.0.1/32 ident y reemplázala con la siguiente:
host all all 127.0.0.1/32 scram-sha-256
Luego encuentra la cadena host all all ::1/128 ident y reemplázala con la siguiente:
host all all ::1/128 scram-sha-256
Guarda los cambios.
Abre el archivo /var/lib/pgsql/data/postgresql.conf en un editor de texto.
Encuentra 'password_encryption', descoméntalo y reemplaza el valor con 'scram-sha-256':
password_encryption = 'scram-sha-256'
Guarda los cambios.
Reinicia el servicio de PostgreSQL:
sudo service postgresql restart
Crea la base de datos y el usuario de PostgreSQL:
Puedes especificar cualquier nombre de usuario y contraseña.
Primero ejecuta el comando
cd /tmp
para evitar la advertencia could not change directory to "/root" si se ejecuta desde root. Luego, la base de datos y el usuario deben ser creados:
sudo -i -u postgres psql -c "CREATE USER onlyoffice WITH PASSWORD 'onlyoffice';"
sudo -i -u postgres psql -c "CREATE DATABASE onlyoffice OWNER onlyoffice;"
Instalación de Redis
Ejecuta el siguiente comando:
sudo yum -y install redis
Inicia el servicio redis y habilita el inicio al arrancar:
sudo systemctl enable --now redis
Instalación de RabbitMQ
sudo curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | os=centos dist=$REV sudo bash
sudo curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | os=centos dist=$REV sudo bash
Cambia $REV a la versión de tu sistema operativo manualmente (7 para versiones 7.x, 8 para versiones 8.x, 9 para versiones 9.x y así sucesivamente).
sudo yum install rabbitmq-server
Alternativamente, puedes instalar RabbitMQ en CentOS 8 o CentOS 9 desde el sitio oficial.
Inicia el servicio rabbitmq y habilita el inicio al arrancar:
sudo systemctl enable --now rabbitmq-server
Añadiendo el repositorio de ONLYOFFICE Docs
Añade el repositorio yum de ONLYOFFICE Docs con el siguiente comando:
sudo yum install https://download.onlyoffice.com/repo/centos/main/noarch/onlyoffice-repo.noarch.rpm
Instalación de mscorefonts
Instala los paquetes cabextract y xorg-x11-font-utils:
sudo yum install cabextract xorg-x11-font-utils
Para CentOS 7.8(2003), también se requiere fontconfig:
sudo yum install fontconfig
Instala el paquete de fuentes msttcore:
sudo rpm -i https://sourceforge.net/projects/mscorefonts2/files/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm
Instalación de ONLYOFFICE Docs
Ejecuta el siguiente comando para la edición Developer:
sudo yum install onlyoffice-documentserver-de
Inicia el servicio nginx y habilita el inicio al arrancar:
sudo service nginx start
sudo systemctl enable nginx
Después de eso, ONLYOFFICE Docs se ejecutará como un proceso. El paquete se actualizará como cualquier otro paquete rpm.
Actualización de ONLYOFFICE Docs
Para actualizar ONLYOFFICE Docs, ejecuta el siguiente comando:
sudo yum update onlyoffice-documentserver-de
En RHEL 8 y sus derivados, ejecutar yum update con el repositorio de ONLYOFFICE habilitado puede fallar con un error de dependencia.
Para evitar esto, excluye estos paquetes del repositorio de ONLYOFFICE para que se obtengan del repositorio AppStream del sistema en su lugar:
echo "excludepkgs=xorg-x11-server-Xvfb,xorg-x11-server-common" >> /etc/yum.repos.d/onlyoffice.repo
Este comando solo necesita ejecutarse una vez. Después de eso, yum update funcionará como se espera.
Si instalaste ONLYOFFICE Docs a través de OneClick Install, esta exclusión ya se aplica automáticamente.
Cambiar el puerto predeterminado de ONLYOFFICE Docs
Por defecto, ONLYOFFICE Docs escucha las conexiones entrantes utilizando el puerto 8083. A partir de la versión 4.3 puedes cambiar el puerto para ONLYOFFICE Docs si planeas usarlo en lugar del predeterminado.
Si vas a cambiar el puerto predeterminado, asegúrate de que esté abierto para las conexiones entrantes/salientes. Consulta la lista completa de los puertos utilizados por ONLYOFFICE Docs.
Para hacerlo, necesitarás editar la variable de entorno DS_PORT ejecutando el comando:
export DS_PORT=<PORT_NUMBER>
Por favor, escribe el número de puerto en lugar de <PORT_NUMBER> en el comando anterior.
Si estableces el puerto en 80, asegúrate de haber desactivado el sitio web predeterminado de NGINX como se describe en la sección Instalación de la versión actualizada del paquete NGINX.
Si deseas cambiar el protocolo de ONLYOFFICE Docs a HTTPS, no cambies el puerto a 443, sino utiliza esta instrucción en su lugar.
Después de eso, puedes continuar configurando ONLYOFFICE Docs.
Configuración de ONLYOFFICE Docs
Ejecutar un script de configuración
Por defecto, se utiliza PostgreSQL como base de datos. Si deseas usar MySQL en lugar de PostgreSQL, por favor añade dos variables de entorno para definir el tipo de base de datos y el puerto antes de ejecutar el script documentserver-configure.sh:
export DB_TYPE=mysql
export DB_PORT=3306
Después de añadir estas dos variables, podrás cambiar la base de datos usando el script.
Ejecuta el script documentserver-configure.sh:
bash documentserver-configure.sh
Se te pedirá que especifiques los parámetros de conexión de PostgreSQL, Redis y RabbitMQ. Usa los siguientes datos:
Para PostgreSQL:
- Host: localhost
- Base de datos: onlyoffice
- Usuario: onlyoffice
- Contraseña: onlyoffice
Para Redis:
- Host: localhost
Para RabbitMQ:
- Host: localhost
- Usuario: guest
- Contraseña: guest
Añadir una excepción al firewall
sudo firewall-cmd --zone=public --add-port=8083/tcp --permanent
sudo firewall-cmd --reload
Desactivar SELinux
obsoleto desde v.5.0
Abre el archivo /etc/selinux/config usando cualquier editor de texto, reemplaza la cadena SELINUX=enforcing o SELINUX=permissive por SELINUX=disabled y guarda los cambios.
Reinicia tu servidor para que los cambios surtan efecto.
Por razones de seguridad, a partir de la v8.1, se generan nuevas claves WOPI en local.json al ejecutar el script documentserver-configure.sh. Si estás usando una conexión WOPI, necesitas ejecutar el script después de actualizar ONLYOFFICE Docs:
documentserver-configure.sh --wopienabled true
Iniciar ONLYOFFICE Docs en un navegador
Una vez finalizada la configuración, puedes ingresar http://localhost:8083 en la barra de direcciones de tu navegador para abrir la página de bienvenida de ONLYOFFICE Docs, donde encontrarás más instrucciones sobre cómo habilitar ejemplos de documentos o integrar editores en línea en tu aplicación web utilizando la API proporcionada.
Registrar tu versión de Developer Edition
Si compraste Developer Edition y recibiste el archivo license.lic, puedes colocarlo en tu instalación para obtener la versión completa del software.
Cuando eres usuario de una distribución Linux basada en Red Hat, el archivo license.lic se coloca en la siguiente carpeta:
/var/www/onlyoffice/Data/license.lic
Después de eso, tu versión de Developer Edition estará registrada y con todas las funciones habilitadas.