Herramientas Informaticas

Etiqueta: Nextcloud

🚀 Solución definitiva al error “ONLYOFFICE Document Server is unavailable” en Nextcloud (Snap + Docker)

Entrada fija

¿Tu integración de ONLYOFFICE en Nextcloud se desconecta sola y tienes que estar guardando la configuración a cada rato? 😤
Tranquilo, no eres el único. Después de muchas pruebas, encontré un script automático que simula hacer clic en “Guardar” y mantiene la conexión viva. Y lo mejor: se ejecuta solo a la medianoche para no molestar a los usuarios. 🌙

🔍 ¿Qué causa el error?

Si usas Nextcloud instalado como Snap y el ONLYOFFICE Document Server en Docker (con dominio DDNS y puerto personalizado), el problema suele ser que el servidor de documentos no puede descargar los archivos desde la URL pública. Al guardar manualmente la configuración, todo vuelve a funcionar… hasta que falla otra vez.

✅ La solución: un script + cron nocturno

Este script hace exactamente lo mismo que tú harías en la interfaz web: establece la URL del Document Server, la URL interna (StorageUrl), desactiva la verificación SSL y verifica la conexión. Lo programamos con cron para que se ejecute cada noche a las 12:00 AM, cuando nadie está usando el sistema.

📝 Paso 1: Crear el script

Abre una terminal en tu servidor Ubuntu y crea el archivo:

sudo nano /usr/local/bin/onlyoffice_refresh.sh

Copia y pega este contenido (ajusta las URLs a las tuyas):

#!/bin/bash

# Script para guardar la configuración de ONLYOFFICE exactamente como en la interfaz web
# Esto simula hacer clic en "Save"

NEXTCLOUD_OCC="/snap/bin/nextcloud.occ"

# Valores según tu configuración (¡cámbialos si es necesario!)
DOCUMENT_SERVER_URL="https://tudominio.dyndns.org:4445/"
STORAGE_URL="https://tudominio.dyndns.org:444/"   # O usa la IP interna si funciona mejor
VERIFY_PEER_OFF="true"

# Establecer DocumentServerUrl
$NEXTCLOUD_OCC config:app:set onlyoffice DocumentServerUrl --value="$DOCUMENT_SERVER_URL"

# Establecer StorageUrl (dirección para peticiones internas desde ONLYOFFICE Docs)
$NEXTCLOUD_OCC config:app:set onlyoffice StorageUrl --value="$STORAGE_URL"

# Desactivar verificación de certificados
$NEXTCLOUD_OCC config:app:set onlyoffice verify_peer_off --value="$VERIFY_PEER_OFF"

# Limpiar InternalServerUrl (lo dejamos vacío)
$NEXTCLOUD_OCC config:app:delete onlyoffice InternalServerUrl >/dev/null 2>&1

# Verificar conexión
echo "Configuración aplicada. Verificando conexión..."
$NEXTCLOUD_OCC onlyoffice:documentserver --check

echo "Listo. Configuración guardada."

⚠️ Importante: Reemplaza tudominio.dyndns.org y los puertos por los tuyos. Si tu Nextcloud usa HTTP, cambia https por http. Si no usas puerto 444, ajústalo.

🔧 Paso 2: Dar permisos de ejecución

sudo chmod +x /usr/local/bin/onlyoffice_refresh.sh

🧪 Paso 3: Probar manualmente

sudo /usr/local/bin/onlyoffice_refresh.sh

Deberías ver un mensaje como Document Server is reachable. Si falla, revisa las URLs.

⏲️ Paso 4: Programar la tarea nocturna (cron)

sudo crontab -e

Agrega esta línea para que se ejecute todos los días a las 12:00 AM:

0 0 * * * /usr/local/bin/onlyoffice_refresh.sh >> /var/log/onlyoffice_refresh.log 2>&1

Con esto, cada medianoche el script se ejecutará y dejará la conexión lista para el día siguiente. Además, guarda un log en /var/log/onlyoffice_refresh.log por si quieres revisar que todo vaya bien.

🎯 ¿Por qué funciona?

El script fuerza la reescritura de los parámetros clave (DocumentServerUrl, StorageUrl, verify_peer_off) exactamente como lo harías desde el panel de administración de Nextcloud. Al ejecutarse una vez al día, evita que la conexión se caiga durante la jornada laboral. Es una solución sencilla, automática y sin impacto en el rendimiento.

🧠 Consejos adicionales

  • Si la conexión se sigue cayendo varias veces al día, puedes aumentar la frecuencia del cron a cada hora (0 * * * *) o cada 30 minutos (*/30 * * * *). El script es muy liviano.
  • Para una solución definitiva (sin cron), configura correctamente la variable StorageUrl apuntando a la IP interna de tu servidor (ej. http://192.168.0.1). Pero este script es un gran parche mientras encuentras la IP perfecta.
  • Mantén actualizados Nextcloud Snap, el conector ONLYOFFICE y el contenedor Docker del Document Server.

📢 ¿Te funcionó?
Si este tutorial te ayudó, comparte y comenta. Entre todos podemos hacer que Nextcloud + ONLYOFFICE funcione de maravilla. 💪


Etiquetas SEO sugeridas: Nextcloud ONLYOFFICE error, Document Server unavailable, Snap Nextcloud, Docker ONLYOFFICE, cron job, solución Nextcloud

Meta descripción: ¿El ONLYOFFICE de Nextcloud se desconecta solo? Aprende a crear un script automático que guarda la configuración cada noche y olvídate del error. Paso a paso para Snap y Docker.

Cómo instalar OnlyOffice en Nextcloud (instalado con Snap) – Guía completa

Entrada fija

Si ya tienes Nextcloud instalado con Snap, el siguiente paso lógico es convertirlo en una suite completa tipo Google Workspace. Para eso, puedes integrar OnlyOffice, una poderosa herramienta que permite editar documentos Word, Excel y PowerPoint directamente desde tu nube.


¿Qué es OnlyOffice?

OnlyOffice es una suite ofimática online que se integra perfectamente con Nextcloud, permitiendo editar documentos en tiempo real, colaborar con otros usuarios y mantener compatibilidad con formatos de Microsoft Office.

  • 📝 Editor de documentos (Word)
  • 📊 Hojas de cálculo (Excel)
  • 📽️ Presentaciones (PowerPoint)
  • 👥 Edición colaborativa en tiempo real

Requisitos

  • Nextcloud instalado vía Snap
  • Servidor Ubuntu (recomendado 2GB RAM mínimo)
  • Acceso SSH con sudo

Instalar OnlyOffice Document Server con Docker

1. Instalar Docker


sudo apt update
sudo apt install docker.io -y
sudo systemctl enable --now docker
  

2. Ejecutar OnlyOffice


sudo docker run -i -t -d -p 8080:80 \
--restart=always \
onlyoffice/documentserver
  

Esto levantará OnlyOffice en:

http://TU_IP:8080

Instalar la aplicación en Nextcloud

  1. Entra a tu panel de Nextcloud
  2. Ve a Apps (Aplicaciones)
  3. Busca: ONLYOFFICE
  4. Instala ONLYOFFICE Docs

Configurar conexión con OnlyOffice

Ve a:

Configuración → Administración → ONLYOFFICE

En “Document Editing Service”, coloca:

http://TU_IP:8080

Configurar seguridad con JWT (recomendado)

Para mayor seguridad, puedes activar autenticación JWT.


sudo docker stop $(sudo docker ps -q)

sudo docker run -i -t -d -p 8080:80 \
-e JWT_ENABLED=true \
-e JWT_SECRET=mi_clave_super_segura \
--restart=always \
onlyoffice/documentserver
  

Luego en Nextcloud:

  • Activa JWT
  • Introduce la misma clave

Solución de problemas (Nextcloud Snap)

Si Nextcloud no se conecta correctamente:


sudo snap set nextcloud ports.http=80
sudo snap set nextcloud ports.https=443
sudo ufw allow 8080
  

Recomendaciones

  • 🔒 Usa HTTPS (Let’s Encrypt)
  • ⚡ Usa mínimo 2GB de RAM
  • 🌐 Configura dominio si lo usarás fuera de red local
  • 📦 Usa Docker para mayor estabilidad

Conclusión

Integrar OnlyOffice con Nextcloud transforma tu servidor en una plataforma completa de productividad, similar a Google Drive o Microsoft 365, pero con control total sobre tus datos.


Apóyame

Si esta guía te fue útil y quieres apoyar más contenido como este:

👉 https://www.patreon.com/u74078772?

Cómo instalar Nextcloud en Ubuntu Server 24.04 (Guía completa + Script automático)

Entrada fija

Si quieres tener tu propia nube privada tipo Google Drive o Dropbox, Nextcloud es una de las mejores opciones. En esta guía te mostraré cómo instalarlo en Ubuntu Server 24.04 de forma sencilla, incluyendo un script automático que hace casi todo por ti.


¿Qué es Nextcloud?

Nextcloud es una plataforma de almacenamiento en la nube de código abierto que te permite guardar archivos, sincronizarlos entre dispositivos, compartirlos y mucho más, todo en tu propio servidor.

  • 📁 Almacenamiento privado
  • 🔄 Sincronización de archivos
  • 🔐 Control total de tus datos
  • 👥 Compartir archivos fácilmente

Requisitos

  • Servidor con Ubuntu Server 24.04
  • Acceso SSH con permisos sudo
  • Conexión a internet

Instalación automática (Script)

Para facilitar todo el proceso, puedes usar el siguiente script que instala Apache, PHP, MariaDB y Nextcloud automáticamente.


#!/bin/bash

# ==========================================
# Instalador automático de Nextcloud
# Ubuntu Server 24.04
# Adaptado por julio101290
# ==========================================

set -e

DB_NAME="nextcloud"
DB_USER="ncuser"
DB_PASS="ncpassword123"
NC_DIR="/var/www/nextcloud"

echo "🔄 Actualizando sistema..."
sudo apt update && sudo apt upgrade -y

echo "🌐 Instalando Apache..."
sudo apt install apache2 -y

echo "🐘 Instalando PHP y extensiones..."
sudo apt install -y php php-cli php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-bcmath php-intl php-imagick php-gmp libapache2-mod-php

echo "🗄️ Instalando MariaDB..."
sudo apt install mariadb-server -y

echo "🔐 Configurando base de datos..."
sudo mysql -e "CREATE DATABASE ${DB_NAME};"
sudo mysql -e "CREATE USER '${DB_USER}'@'localhost' IDENTIFIED BY '${DB_PASS}';"
sudo mysql -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'localhost';"
sudo mysql -e "FLUSH PRIVILEGES;"

echo "⬇️ Descargando Nextcloud..."
cd /var/www/
sudo wget https://download.nextcloud.com/server/releases/latest.zip
sudo apt install unzip -y
sudo unzip latest.zip
sudo chown -R www-data:www-data nextcloud
sudo chmod -R 755 nextcloud

echo "⚙️ Configurando Apache..."
sudo bash -c 'cat > /etc/apache2/sites-available/nextcloud.conf <<EOF
&lt;VirtualHost *:80&gt;
    ServerName localhost
    DocumentRoot /var/www/nextcloud

    &lt;Directory /var/www/nextcloud/&gt;
        Require all granted
        AllowOverride All
        Options FollowSymLinks MultiViews
    &lt;/Directory&gt;

    ErrorLog \${APACHE_LOG_DIR}/nextcloud_error.log
    CustomLog \${APACHE_LOG_DIR}/nextcloud_access.log combined
&lt;/VirtualHost&gt;
EOF'

sudo a2ensite nextcloud.conf
sudo a2enmod rewrite headers env dir mime
sudo systemctl restart apache2

echo "🧹 Limpiando..."
sudo rm latest.zip

IP=$(hostname -I | awk '{print $1}')

echo "========================================="
echo "✅ INSTALACIÓN COMPLETA"
echo "========================================="
echo "🌐 Accede en tu navegador:"
echo "http://$IP"
echo ""
echo "📌 Base de datos:"
echo "DB: $DB_NAME"
echo "Usuario: $DB_USER"
echo "Password: $DB_PASS"
echo "Host: localhost"
echo ""
echo "⚠️ IMPORTANTE: Completa la instalación en el navegador"
echo "========================================="
  

Cómo ejecutar el script

  1. Crear el archivo: nano install_nextcloud.sh
  2. Pegar el script y guardar
  3. Dar permisos: chmod +x install_nextcloud.sh
  4. Ejecutar: ./install_nextcloud.sh

Acceso a Nextcloud

Una vez terminado, abre tu navegador y entra a:

http://TU_IP

Desde ahí podrás crear el usuario administrador y conectar la base de datos.


Recomendaciones de seguridad

  • 🔐 Cambiar la contraseña de la base de datos
  • 🔒 Activar HTTPS con Let’s Encrypt
  • 🧱 Configurar firewall (UFW)
  • 💾 Hacer backups regularmente

Conclusión

Con este método puedes tener tu propia nube privada funcionando en pocos minutos. Es ideal para uso personal o incluso para pequeñas empresas que quieran tener control total sobre sus datos.


Apóyame

Si esta guía te fue útil y quieres apoyar más contenido como este, puedes hacerlo aquí:

👉 https://www.patreon.com/u74078772?

Creado con WordPress & Tema de Anders Norén