Saltar al contenido principal

Instalación de la versión Docker de ONLYOFFICE Docs para arm64

Introducción​

A partir de la versión 7.1, ONLYOFFICE Docs se puede instalar usando Docker para arm64.

Community Edition le permite instalar el ONLYOFFICE Docs en su servidor local e integrar los editores en línea con otros sistemas populares.

ONLYOFFICE Docs es una suite de oficina en línea que incluye visores y editores para textos, hojas de cálculo y presentaciones, totalmente compatible con los formatos Office Open XML: .docx, .xlsx, .pptx y que permite la edición colaborativa en tiempo real.

Funcionalidades

  • Editor de documentos
  • Editor de hojas de cálculo
  • Editor de presentaciones
  • Visores web móviles
  • Edición colaborativa
  • Soporte para caracteres jeroglíficos
  • Compatibilidad con todos los formatos populares: DOC, DOCX, TXT, ODT, RTF, ODP, EPUB, ODS, XLS, XLSX, CSV, PPTX, HTML

Consulte la lista detallada de características disponibles para ONLYOFFICE Docs Community Edition.

Usándolo dentro de ONLYOFFICE Workspace, podrá:

  • compartir archivos;
  • gestionar derechos de acceso a documentos;
  • incrustar documentos en un sitio web;
  • ver y editar archivos almacenados en Drive, Box, Dropbox, OneDrive, OwnCloud conectados a ONLYOFFICE.

Esta guía le mostrará cómo instalar la versión Docker del ONLYOFFICE Docs Community Edition versión 7.2 y posteriores para arm64.

Requisitos del sistema​

  • Procesador: procesadores ARM de 64 bits
  • RAM: 4 GB o más
  • HDD: al menos 40 GB de espacio libre
  • SWAP: al menos 4 GB, pero depende del sistema operativo del host. Más es mejor
  • OS: distribución de Linux para arm64
  • Requisitos adicionales
    • Docker: cualquier versión soportada por el equipo de Docker

Instalación del ONLYOFFICE Docs​

nota

Usted necesita tener la última versión de Docker instalada. Si no la tiene, por favor, vea la sección Instalación en el sitio web Docker para encontrar las instrucciones.

nota

En Docker se especifican los servidores DNS de Google por defecto. Si su ONLYOFFICE Docs no va a tener acceso a Internet, le recomendamos que reemplace la dirección predeterminada del servidor DNS especificada en Docker por la dirección de su servidor DNS local. Para hacerlo abra el archivo /etc/default/docker y cambie la dirección IP en la línea siguiente por la dirección IP de un servidor DNS en su red local:

docker_OPTS="--dns 8.8.8.8"

Para los sistemas operativos basados en RPM como CentOS:

  1. Cree el archivo de configuración /etc/docker/daemon.json con el siguiente contenido:

    { "dns" : [ "8.8.8.8" ] }
  2. Reinicie el servicio Docker:

    sudo systemctl restart docker.service

Después de instalar Docker, ejecútelo y luego ejecute el comando siguiente:

sudo docker run -i -t -d -p 80:80 --restart=always -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver:latest
Importante

A partir de la versión 7.2, hemos añadido la generación aleatoria del secreto JWT. Si el secreto JWT no se especifica con la variable de entorno, se vuelve a generar en cada reinicio de las máquinas virtuales o del servidor físico, por lo que puede haber problemas en las integraciones. Para evitar este problema, especifique su propio valor en -e JWT_SECRET=my_jwt_secret.

Si no va a usar JWT en su instalación, use -e JWT_ENABLED=false.

nota

De forma predeterminada el ONLYOFFICE Docs escucha las conexiones de entrada usando el puerto 80. A partir de la versión 4.3 Usted puede cambiar puerto para el ONLYOFFICE Docs si tiene planes de usarlo en vez del estándar. Esto se puede hacer fácilmente cambiando el puerto de mapeo durante la instalación:

sudo docker run -i -t -d -p <PORT_NUMBER>:80 --restart=always -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver:latest

Donde <PORT_NUMBER> es el número de puerto que quiere usar para el ONLYOFFICE Docs.

Esto instalará el ONLYOFFICE Docs y todas las dependencias necesarias (encuentre la lista de comandos que se ejecutan por el script aquí).

Almacenamiento de datos fuera de contenedores​

Todos los datos se almacenan en los directorios especialmente designados, los volúmenes de datos, en la siguiente ubicación:

  • /var/log/onlyoffice para archivos de registro (logs) del ONLYOFFICE Docs
  • /var/www/onlyoffice/Data para certificados
  • /var/lib/onlyoffice para caché de archivos
Recomendación

Le recomendamos encarecidamente que almacene los datos fuera de contenedores de Docker en la máquina anfitriona (host), porque le permite fácilmente actualizar el ONLYOFFICE Docs después del lanzamiento de la nueva versión sin pérdida de datos.

Para obtener acceso a sus datos almacenados fuera del contenedor Usted necesita montar los volúmenes. Esto se puede hacer especificando la opción -v en el comando docker run.

sudo docker run -i -t -d -p 80:80 --restart=always \
-v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \
-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \
-v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice
nota

Tenga en cuenta que si está intentando montar las carpetas que todavía no han sido creadas, estas carpetas se crearán, pero el acceso a ellas será limitado. Usted necesitará cambiar sus derechos de acceso manualmente.

Normalmente, Usted no necesita almacenar datos de contenedor, porque la operación del contenedor no depende de sus estados. Almacenamiento de datos será útil:

  • para un fácil acceso a datos del contenedor, como archivos de registro (logs);
  • eliminar el límite del tamaño de los datos dentro del contenedor.

Ejecución del ONLYOFFICE Docs usando HTTPS​

sudo docker run -i -t -d -p 443:443 --restart=always \
-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver:latest

Acceso a la aplicación ONLYOFFICE puede ser asegurado usando el protocolo SSL con objeto de evitar acceso no autorizado. Un certificado SSL confirmado por entidad certificadora proporciona verificación de confianza a través de entidad certificadora, certificados autofirmados pueden también proporcionar un nivel equivalente de verificación de confianza, siempre que cada cliente tome unos pasos adicionales para verificar la identidad del sitio web. En las siguientes instrucciones se describe cómo hacerlo.

Básicamente para asegurar la aplicación a través de SSL son necesarias dos cosas:

  • Clave privada (.key)
  • Certificado SSL (.crt)

Usted necesita crear e instalar los archivos siguientes:

/app/onlyoffice/DocumentServer/data/certs/onlyoffice.key
/app/onlyoffice/DocumentServer/data/certs/onlyoffice.crt

Al usar certificados confirmados por entidad certificadora (por ejemplo, Let's Encrypt), estos archivos se proporcionan a Usted por la entidad certificadora. Al usar certificados autofirmados necesita generar estos archivos Usted mismo.

Cambio del ONLYOFFICE Docs a HTTPS usando certbot​

La forma más sencilla de cambiar el ONLYOFFICE Docs a HTTPS es obtener automáticamente certificados SSL de Let's Encrypt usando certbot.

Ejecute el contenedor Docker del ONLYOFFICE Docs especificando los puertos 80 y 443 y estableciendo sus propios valores para las variables:

sudo docker run -i -t -d -p 80:80 -p 443:443 --restart=always \
-e LETS_ENCRYPT_DOMAIN=yourdomain.com -e LETS_ENCRYPT_MAIL=email@example.com -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver:latest

Donde:

  • LETS_ENCRYPT_DOMAIN - un nombre de dominio que se usará para el certificado.
  • LETS_ENCRYPT_MAIL - un correo electrónico usado para el registro y como contacto de recuperación.

El certificado firmado por la entidad certificadora letsencrypt.org se generará automáticamente y se instalará en su servidor. Ahora su ONLYOFFICE Docs debería estar disponible en la dirección https://yourdomain.com.

Generación de certificados autofirmados​

Generación de certificados SSL autofirmados incluye un procedimiento sencillo de 3 pasos:

PASO 1: Cree la clave privada de servidor

openssl genrsa -out onlyoffice.key 2048

PASO 2: Cree la solicitud de firma de certificado (CSR)

openssl req -new -key onlyoffice.key -out onlyoffice.csr

PASO 3: Firme el certificado usando la clave privada y CSR

openssl x509 -req -days 365 -in onlyoffice.csr -signkey onlyoffice.key -out onlyoffice.crt

Ahora Usted tiene un certificado SSL generado que es válido durante 365 días.

Fortalecimiento de la seguridad del servidor​

Esta sección le proporciona unas instrucciones para fortalecer la seguridad de su servidor.

Para lograrlo Usted necesita generar los parámetros DHE más fuertes.

openssl dhparam -out dhparam.pem 2048

Instalación de los certificados SSL​

De los cuatro archivos generados antes, Usted necesita instalar los archivos onlyoffice.key, onlyoffice.crt y dhparam.pem en el servidor onlyoffice. El archivo CSR no se requiere, pero asegúrese de hacer la copia de seguridad del archivo (si Usted lo necesita de nuevo) de forma segura.

De forma predeterminada la aplicación onlyoffice está configurada para buscar los certificados SSL en la ruta /var/www/onlyoffice/Data/certs, sin embargo, esto se puede cambiar usando las opciones de configuración SSL_KEY_PATH, SSL_CERTIFICATE_PATH y SSL_DHPARAM_PATH.

La ruta /var/www/onlyoffice/Data/ es la ruta al almacenamiento de datos, que significa que Usted tiene que crear una carpeta llamada certs dentro de /app/onlyoffice/DocumentServer/data/ y copiar los archivos en esta carpeta, además como medida de seguridad es necesario cambiar derechos de acceso para el archivo onlyoffice.key para que sólo el propietario tenga permisos de lectura.

mkdir -p /app/onlyoffice/DocumentServer/data/certs
cp onlyoffice.key /app/onlyoffice/DocumentServer/data/certs/
cp onlyoffice.crt /app/onlyoffice/DocumentServer/data/certs/
cp dhparam.pem /app/onlyoffice/DocumentServer/data/certs/
chmod 400 /app/onlyoffice/DocumentServer/data/certs/onlyoffice.key

Y reinicie el contenedor Docker:

sudo docker restart {{DOCUMENT_SERVER_ID}}

Ahora se encuentra a un paso de asegurar nuestra aplicación.

Parámetros de configuración disponibles​

nota

Por favor, consulte las opciones del comando docker run para el flag --env-file donde Usted puede especificar todas las variables de entorno necesarias en un único archivo. De esta forma no tendrá que escribir un comando docker run potencialmente largo.

A continuación se encuentra una lista completa de parámetros que pueden ser establecidos usando las variables de entorno.

  • ONLYOFFICE_HTTPS_HSTS_ENABLED: La opción de configuración avanzada para desactivar la configuración HSTS. Es aplicable únicamente cuando SSL está en uso. Por defecto se establece el valor true.
  • ONLYOFFICE_HTTPS_HSTS_MAXAGE: La opción de configuración avanzada para establecer el parámetro max-age HSTS en la configuración del host virtual NGINX para onlyoffice. Es aplicable únicamente cuando SSL está en uso. Por defecto se establece el valor 31536000.
  • SSL_CERTIFICATE_PATH: La ruta al certificado SSL usado. Por defecto se establece el valor /var/www/onlyoffice/Data/certs/tls.crt.
  • SSL_KEY_PATH: La ruta a la clave privada del certificado SSL. Por defecto se establece el valor /var/www/onlyoffice/Data/certs/tls.key.
  • SSL_DHPARAM_PATH: La ruta al parámetro Diffie-Hellman. Por defecto se establece el valor /var/www/onlyoffice/Data/certs/dhparam.pem.
  • SSL_VERIFY_CLIENT: Activar verificación de certificados del cliente usando el archivo CA_CERTIFICATES_PATH. Por defecto se establece el valor false.
  • NGINX_WORKER_PROCESSES: Define el número de procesos de trabajo de NGINX.
  • NGINX_WORKER_CONNECTIONS: Establece el número máximo de conexiones simultáneas que pueden ser abiertas por un proceso de trabajo NGINX.
  • SECURE_LINK_SECRET: Define el secreto para la directiva de configuración de nginx secure_link_md5. Por defecto se establece el valor random string (cadena aleatoria).
  • JWT_ENABLED: Gestiona la activación de validación a través de JSON web token por el ONLYOFFICE Docs. Por defecto se establece el valor true.
  • JWT_SECRET: Define la clave secreta para validar JSON web token en la solicitud al ONLYOFFICE Docs. Por defecto se establece un valor aleatorio.
  • JWT_HEADER: Define el encabezado HTTP que será usado para enviar JSON web token. Por defecto se establece el valor Authorization.
  • JWT_IN_BODY: Gestiona la activación de la validación del token en el cuerpo de la solicitud al ONLYOFFICE Docs. Por defecto se establece el valor false.
  • WOPI_ENABLED: Gestiona la activación de los controladores WOPI. Por defecto se establece el valor false.
  • USE_UNAUTHORIZED_STORAGE: Establezca el valor true si usa certificados autofirmados para su servidor de almacenamiento, por ejemplo, Nextcloud. Por defecto se establece el valor false.
  • GENERATE_FONTS: Si es true, regenera la lista de fuentes, las miniaturas de las fuentes, etc. en cada inicio. Por defecto se establece el valor true.
  • METRICS_ENABLED: Gestiona la activación de StatsD para el ONLYOFFICE Docs. Por defecto se establece el valor false.
  • METRICS_HOST: Define el host de escucha de StatsD. Por defecto se establece el valor localhost.
  • METRICS_PORT: Define el puerto de escucha de StatsD. Por defecto se establece el valor 8125.
  • METRICS_PREFIX: Define el prefijo de métricas StatsD para los servicios de backend. Por defecto se establece el valor ds..
  • LETS_ENCRYPT_DOMAIN: Define el dominio para el certificado de Let's Encrypt.
  • LETS_ENCRYPT_MAIL: Define la dirección de correo electrónico del administrador del dominio para el certificado de Let's Encrypt.

Instalación del ONLYOFFICE Docs integrado con ONLYOFFICE Mail​

ONLYOFFICE Docs es una parte de ONLYOFFICE Workspace que también incluye el ONLYOFFICE Community Server, ONLYOFFICE Control Panel y el ONLYOFFICE Mail. Si Usted quiere instalar todos estos componentes e integrar entre sí, lea estas instrucciones.