Integrar Onlyoffice en Nextcloud (Cloudflare Tunnel)

Integrar Onlyoffice en Nextcloud (Cloudflare Tunnel)

Desplegar contenedor OnlyOffice

Primero vamos a crear un directorio a lado de nuestro Nextcloud

cd /opt
ls

Ahora creamos un directorio para onlyoffice

mkdir onlyoffice
cd onlyoffice/

Una vez dentro de este directorio, vamos a crear nuestro archivo docker

nano docker-compose.yml

Pegamos el siguiente contenido:

version: "3"
services:
  onlyoffice:
    image: onlyoffice/documentserver
    container_name: onlyoffice
    restart: always
    ports:
      - "8080:80"  # Exponiendo el servicio en el puerto 8080
    environment:
      - JWT_ENABLED=true
      - JWT_SECRET=SuperSecretoToken  # Cambia esto por una clave segura
    volumes:
      - /opt/onlyoffice/DocumentServer/logs:/var/log/onlyoffice
      - /opt/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data
      - /opt/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice
      - /opt/onlyoffice/DocumentServer/db:/var/lib/postgresql
    networks:
      - onlyoffice_net

networks:
  onlyoffice_net:
    driver: bridge

Algo muy importante es definir el TOKEN para poder conectar exitosamente a Nextcloud, en este campo no olvidemos pone run TOKEN seguro:

- JWT_SECRET=SuperSecretoToken  # Cambia esto por una clave segura

Guardamos y ejecutamos el contenedor:

docker-compose up -d

Una vez finalizado este paso, iremos a configurar en Cloudflare

Ejecutamos este comando para la comuniación entre los contenedores:

docker network connect nextcloud_backend onlyoffice

Cloudflare

Nos ubicamos en el tunel de nuestro Dominio creado en el anterior tutorial y agregamos un nombre de host público

En mi caso puse estos datos, pero podrías poner el subdominio y dominio que quieras, lo que no cambia es el servicio HTTP y tu ip local con puerto :8080

Guardamos y sería todo para el tunnel

Nginx

En Nginx al momento de añadir un nuevo proxy, quedaría de esta manera

Scheme: http
Forward Hostanem / IP: onlyoffice
Forward Port: 8080

El, dominio el que le hayas creado para este caso.

También podemos activar el SSL

Y en avanzado ponemos este texto;

location /.well-known/carddav {
    return 301 $scheme://$host/remote.php/dav;
}

location /.well-known/caldav {
    return 301 $scheme://$host/remote.php/dav;
}

location ^~ /.well-known {
    return 301 $scheme://$host/index.php$uri;
}

Guardamos, aunque nos salga error, y damos guardar otra vez, ya se nos creará.

Ahora es accesible vía pública con tu dominio en https

Nextcloud

Como es obvio, primero debemos estar logeados en nuestro nextcloud:

Luego Nos vamos a nuestro perfil y seleccionamos en Aplicaciones:

Nos ubicamos en «Apps destacadas»

Y en la lupa ponemos onlyoffice y Damos enter, y damos click y pulsamos el botón de Descargar y Activar:

Ahora vamos a Configuraciones de Administración

Ahora vamos a Onlyoffice, ponemos el dominio que creamos y vamos a Ajustes avanzados

Ahora ponemos con esta info en estos campos:

Para mi ejemplo sería así:

Dirección de ONLYOFFICE Docs: https://onlyoffice.disco-solar.com/

Clave secreta (deje en blanco o desactive): SuperSecretoToken

Encabezado de autenticación (dejar en blanco para utilizar el encabezado predeterminado): Authorization

Dirección de ONLYOFFICE Docs para solicitudes internas del servidor: http://onlyoffice/

Dirección de servidor para solicitudes internas del ONLYOFFICE Docs: https://cloud2.disco-solar.com/


Antes de poner en guardar, debemos hacer esta configuración:

RECUERDA: Nextcloud con OnlyOffice

No olvidemos ejecutar este comando para la comunicación:

docker network connect nextcloud_backend onlyoffice

Ahora podemos guardar satisfactoriamente, y podremos abrir OnlyOffice en Nextcloud, no olvidemos seleccionar el formato de los documentos que deseemos abrir en Nextcloud

No olvides suscribirte 🙂

✨ ¿Te gusta mi contenido? Apóyame con una donación para seguir creando más videos útiles.

💕 🔗 Donar aquí: https://www.paypal.com/paypalme/solecito69

¡Gracias por tu apoyo! 🎉