Saltar a contenido

Nextcloud

En este artículo

Información

Nextcloud es un software de servidor de código abierto. Le permite crear su propio servicio en la nube para el almacenamiento de datos y la colaboración. Está basado en el lenguaje de programación PHP y ofrece la capacidad de utilizar varias bases de datos como MySQL, PostgreSQL y SQLite. Nextcloud admite el cifrado de datos a nivel de cliente, lo que garantiza la seguridad durante la transferencia de datos a través de Internet. Con la ayuda de Nextcloud, puede sincronizar datos entre diferentes dispositivos y trabajar online y offline. Nextcloud ofrece un amplio conjunto de herramientas de colaboración como intercambio de documentos, gestión de tareas, calendarios y contactos. Nextcloud también se puede integrar con otros servicios como Google Drive, Dropbox y Microsoft OneDrive.

Nextcloud. Funcionalidades clave

Nextcloud tiene muchas funciones que lo convierten en una herramienta eficaz para el almacenamiento y procesamiento de datos:

  • Almacenamiento de archivos. Nextcloud le permite almacenar archivos en un servidor y acceder a ellos a través de una interfaz web o mediante aplicaciones para ordenadores de sobremesa y dispositivos móviles.
  • Sincronización de archivos. La capacidad de sincronizar archivos entre diferentes dispositivos convierte al servicio en una herramienta conveniente para trabajar en diversas condiciones.
  • Control de versiones. Nextcloud le permite guardar múltiples versiones del mismo archivo. También le permitirá restaurar versiones anteriores si es necesario.
  • Acceso a archivos a través de la interfaz web. Nextcloud tiene una interfaz web que le permite acceder a los archivos a través de un navegador, lo que lo convierte en una herramienta práctica para trabajar desde cualquier dispositivo.
  • Gestión de calendarios y tareas. Nextcloud le permite crear y gestionar calendarios y tareas, convirtiéndolo en una herramienta útil para la organización.
  • Gestión de contactos. Nextcloud le permite crear y gestionar contactos, lo que lo convierte en una herramienta práctica para la gestión de comunicaciones.
  • Acceso a archivos a través de aplicaciones. Nextcloud tiene aplicaciones para ordenadores de sobremesa y dispositivos móviles que le permiten acceder a los archivos a través de ellas.
  • Escalabilidad. Nextcloud cuenta con muchas aplicaciones adicionales que pueden instalarse y utilizarse para ampliar su funcionalidad. Son aplicaciones para la colaboración en línea, edición de documentos, gestión de proyectos, etc.

Nota

Puede desplegar Nextcloud como una Managed App](../../controlpanel/managed_apps.md). Para hacerlo, seleccione Services > Managed Apps en el panel de control del servidor Invapi.

Funcionalidades de implementación

ID Nombre del Software SO Compatible VM BM VGPU GPU CPU Mín. (Núcleos) RAM Mín. (GB) HDD/SSD Mín. (GB) Dominio Personalizado Activo
16 Nextcloud Ubuntu 22.04 + + + + 2 4 40 PEDIR

Para este software, puede configurar un dominio personalizado durante la instalación. Ver instrucciones

Para este software, puede configurar un dominio personalizado durante la instalación. Consulte las instrucciones

  • Nextcloud está incluido en el kernel y no requiere una instalación adicional. Proporcionamos una interfaz web a través de la cual se instala y configura el servicio.
  • Los archivos de configuración se encuentran en:
    • /opt/nextcloud - Instalación y configuración de Nextcloud;
    • /opt/nginx - Instalación y configuración del servicio Nginx;
    • /opt/nextcloud/compose.yml - Ejecuta docker compose, que inicia un conjunto de contenedores de Nextcloud + Onlyoffice.
  • La generación del certificado SSL se basa en el ensamblaje jonasal/nginx-certbot.
  • Estos comandos pueden ser necesarios para actualizar las versiones de los contenedores y editar el archivo de configuración.

    • Para detener los contenedores, ejecute el comando
    cd /opt/nextcloud/
    

    Luego

    docker compose down
    
    • Para habilitar los contenedores, ejecute el comando
    cd /opt/nextcloud/
    

    Luego

    docker compose up -d
    
  • Docker compose up -d ejecuta el archivo compose.yml, que descarga y lanza los siguientes contenedores:

    • db - contenedor, se descarga PostgreSQL y se realizan los siguientes ajustes:
      • Se crea la base de datos de Nextcloud (o base);
      • Se genera el usuario de Nextcloud;
      • la contraseña para SSH (se envía por correo electrónico a su dirección una vez que el servidor esté listo para funcionar tras desplegar el software);
      • El puerto estándar es 5432.
    • redis - contenedor, almacena las llamadas a Nextcloud en memoria y solo después de los registros en la base de datos PostgreSQL.
    • app - contenedor, el servicio Nextcloud tiene los siguientes parámetros:
      • El acceso a una aplicación se realiza desde un navegador web o una aplicación móvil utilizando el enlace https://nextcloud(server_id).hostkey.in (por ejemplo, https://nextcloud16094.hostkey.in);
      • inicio de sesión: admin;
      • contraseña: de ssh;
    • onlyoffice-document-server - contenedor, el servicio OnlyOffice se ejecuta en el puerto 80.

    Atención

    Este contenedor tarda hasta 6 minutos en iniciarse. Durante este tiempo, puede ir a la interfaz web de Nextcloud, subir y descargar archivos, pero la capacidad de editar documentos aparecerá solo 6 minutos después de ejecutar docker compose up -d (tarda un poco en iniciarse algunos componentes).

    • nginx - contenedor, servicio Nginx que acepta peticiones en los puertos 80 y 443 y redirige las peticiones al contenedor Nextcloud.

Nota

A menos que se especifique lo contrario, por defecto instalamos la última versión de lanzamiento del software desde el sitio web del desarrollador o los repositorios del sistema operativo.

Primeros pasos tras desplegar Nextcloud como una Managed App

Después de desplegar Nextcloud como una Managed App, puede encontrar lo siguiente en la pestaña My Apps del panel de control del servidor:

  • un enlace a la aplicación;
  • inicio de sesión y contraseña para el acceso;
  • información relativa al uso y gestión del servicio.

Para más detalles sobre cómo trabajar con Managed Apps, consulte las instrucciones.

Primeros pasos tras desplegar Nextcloud desde el Marketplace: Configuración de los parámetros de instalación mediante Cloud-init

Al pedir un servidor con Nextcloud, puede preconfigurar los principales parámetros de instalación utilizando la configuración cloud-init durante el proceso de pedido en la etapa Automation. Esto le permite establecer automáticamente las credenciales de administrador, el correo electrónico y la ruta de almacenamiento de datos:

Parámetros de configuración

Para configurar Nextcloud a través de cloud-init, utilice el siguiente formato:

write_files:
  - path: "/opt/main.yml"
    permissions: "0644"
    content: |
      nextcloud_admin_name: "root"
      nextcloud_admin_pwd: "YOUR_PASSWORD"
      nextcloud_admin_email: "admin@localhost"
      nextcloud_data_path: "/opt/nextcloud-data"

Descripción de los parámetros

  • nextcloud_admin_name - nombre de la cuenta de administrador (por defecto: admin);
  • nextcloud_admin_pwd - contraseña de administrador (especifique su contraseña segura);
  • nextcloud_admin_email - correo electrónico del administrador para notificaciones;
  • nextcloud_data_path - ruta para almacenar los datos de Nextcloud (por defecto: /opt/nextcloud-data).

Recomendación

Utilice una contraseña segura para nextcloud_admin_pwd y un correo electrónico real para nextcloud_admin_email para recibir notificaciones importantes del sistema.

Atención

Después de aplicar la configuración de cloud-init, se utilizarán los parámetros especificados en lugar de los predeterminados. Guarde estos datos en un lugar seguro.

Primeros pasos tras desplegar Nextcloud

Se enviará una notificación al correo electrónico especificado durante el registro indicando que el servidor está listo para funcionar tras haber pagado el pedido. Contendrá la dirección IP del VPS, así como el inicio de sesión y la contraseña para la conexión. Los clientes de nuestra empresa gestionan el hardware en el panel de control del servidor e Invapi — Invapi.

Puede encontrar los datos de autorización ya sea en la pestaña Configuration >> Tags del panel de control del servidor o en el correo electrónico enviado.

  • Enlace para acceder al dashboard de Nextcloud con interfaz web: en la etiqueta webpanel;
  • Login: admin;
  • Password: Enviada a su dirección de correo electrónico una vez que el servidor esté listo para su uso tras el despliegue del software.

Tras acceder al panel de control de Nextcloud, debe introducir su inicio de sesión y contraseña:

Una vez iniciada la sesión correctamente, puede empezar a utilizar el servicio.

Nota

Para más información sobre los ajustes básicos de Nextcloud, consulte la documentación de los desarrolladores.

Atención

Para pedir el servidor Nextcloud, debe elegir un servidor de acuerdo con las recomendaciones de los desarrolladores.

Cambiar el nombre de dominio

Antes de comenzar a trabajar en el cambio del nombre de dominio, se recomienda crear una copia de seguridad de todos los archivos especificados en las instrucciones. Para crear copias de seguridad de los archivos principales, ejecute los siguientes comandos:

  1. Crear un directorio para las copias de seguridad

    mkdir -p /root/nextcloud_backup
    
  2. Copiar el archivo de configuración de Nginx

    cp /opt/nginx/user_conf.d/nextcloud<server ID>.hostkey.in.conf /root/nextcloud_backup/
    
  3. Copiar el archivo Docker Compose

    cp /opt/nextcloud/compose.yml /root/nextcloud_backup/
    
  4. Copiar el script de configuración

    cp /opt/nextcloud/set_configuration.sh /root/nextcloud_backup/
    
  5. Copiar el archivo de configuración de Nextcloud

    cp /var/lib/docker/volumes/app_data/_data/config/config.php /root/nextcloud_backup/
    

Estos comandos crearán copias de seguridad de todos los archivos clave que se cambiarán durante el proceso de cambio de nombre de dominio. En caso de problemas, puede restaurar la configuración original desde estas copias de seguridad.

Restauración desde las copias de seguridad y eliminación tras una migración exitosa

Si el proceso de cambio de nombre de dominio falla y necesita restaurar la configuración original, ejecute los siguientes comandos:

  1. Restaurar el archivo de configuración de Nginx

    cp /root/nextcloud_backup/nextcloud<server ID>.hostkey.in.conf /opt/nginx/user_conf.d/
    
  2. Restaurar el archivo Docker Compose

    cp /root/nextcloud_backup/compose.yml /opt/nextcloud/
    
  3. Restaurar el script de configuración

    cp /root/nextcloud_backup/set_configuration.sh /opt/nextcloud/
    
  4. Restaurar el archivo de configuración de Nextcloud

    cp /root/nextcloud_backup/config.php /var/lib/docker/volumes/app_data/_data/config/
    
  5. Reiniciar los contenedores

    cd /opt/nextcloud
    docker compose down
    docker compose up -d
    
  6. Reiniciar nginx

    docker restart nginx-certbot
    

Estos comandos restaurarán todos los archivos de configuración a su estado original y reiniciarán los servicios necesarios.

Una vez que esté seguro de que el cambio de nombre de dominio ha sido exitoso y todo funciona correctamente (se recomienda esperar al menos 24-48 horas para realizar pruebas completas), puede eliminar las copias de seguridad de forma segura:

  1. Comprobar el contenido del directorio de copias de seguridad

    ls -la /root/nextcloud_backup/
    
  2. Eliminar todo el directorio de copias de seguridad

    rm -rf /root/nextcloud_backup/
    

Antes de la eliminación, se recomienda comprobar el contenido del directorio para asegurarse de que solo está eliminando los archivos necesarios.

Configuración de archivos

  1. Conectarse al servidor vía SSH:

    ssh root@IP_ADDRESS
    
  2. Cambiar el hostname (opcional):

    hostnamectl set-hostname nextcloud_server
    
  3. Editar /etc/hosts:

    nano /etc/hosts
    

    Añada una línea que vincule el nuevo dominio con la dirección IP del servidor:

    IP_ADDRESS YOUR_DOMAIN_NAME
    

    (reemplace la dirección IP y el nombre de dominio por sus valores)

Configuración de Nginx

  1. Buscar y editar el archivo de configuración de Nginx:

    nano /opt/nginx/user_conf.d/nextcloud<server ID>.hostkey.in.conf
    

    Reemplace todas las instancias del antiguo nombre de dominio (nextcloud<server ID>.hostkey.in) por el nuevo (YOUR_DOMAIN_NAME):

    • Línea 4: server_name nextcloud<server ID>.hostkey.in; > server_name YOUR_DOMAIN_NAME;
    • Línea 15: server_name nextcloud<server ID>.hostkey.in; > server_name YOUR_DOMAIN_NAME;
    • Línea 17: ssl_certificate /etc/letsencrypt/live/nextcloud<server ID>.hostkey.in/fullchain.pem; > ssl_certificate /etc/letsencrypt/live/YOUR_DOMAIN_NAME/fullchain.pem;
    • Líline 18: ssl_certificate_key /etc/letsencrypt/live/nextcloud<server ID>.hostkey.in/privkey.pem; > ssl_certificate_key /etc/letsencrypt/live/YOUR_DOMAIN_NAME/privkey.pem;
    • Línea 19: ssl_trusted_certificate /etc/letsencrypt/live/nextcloud<server ID>.hostkey.in/chain.pem; > ssl_trusted_certificate /etc/letsencrypt/live/YOUR_DOMAIN_NAME/chain.pem;
  2. Renombrar el archivo de configuración:

    mv /opt/nginx/user_conf.d/nextcloud<server ID>.hostkey.in.conf /opt/nginx/user_conf.d/YOUR_DOMAIN_NAME.conf
    
  3. Reiniciar el contenedor Nginx:

    docker restart nginx-certbot
    

Configuración de Nextcloud

  1. Editar el archivo Docker Compose:

    nano /opt/nextcloud/compose.yml
    

    Reemplace todas las instancias del antiguo nombre de dominio por el nuevo (YOUR_DOMAIN_NAME). Preste atención a las líneas que contienen:

    • Línea 40: - OVERWRITECLIURL=https://nextcloud<server ID>.hostkey.in/
    • Línea 41: - OVERWRITEHOST=nextcloud<server ID>.hostkey.in
  2. Editar el script de configuración de Nextcloud:

    nano /opt/nextcloud/set_configuration.sh
    

    Reemplace todas las instancias del antiguo nombre de dominio por el nuevo. Preste especial atención a las líneas:

    • Línea 11: if ! grep -q "nextcloud<server ID>.hostkey.in" trusted_domain.tmp; then
    • Línea 13: docker exec -u www-data app-server php occ --no-warnings config:system:set trusted_domains $TRUSTED_INDEX --value="nextcloud<server ID>.hostkey.in"
    • Línea 23: docker exec -u www-data app-server php occ --no-warnings config:system:set onlyoffice StorageUrl --value="https://nextcloud<server ID>.hostkey.in/

Aplicar cambios

  1. Navegar al directorio de Nextcloud:

    cd /opt/nextcloud
    
  2. Det detener y eliminar los contenedores existentes:

    docker compose down
    

    Este comando detendrá y eliminará todos los contenedores definidos en el archivo compose.yml pero manteldrá todos los datos en los volúmenes.

  3. Iniciar los contenedores de Nextcloud:

    docker compose up -d
    
  4. Ejecutar el script de configuración:

    bash /opt/nextcloud/set_configuration.sh
    

    Si el script informa un error indicando que el comando "maintenance:install" no está definido, esto es normal; Nextcloud ya ha sido instalado.

Comprobación y depuración

  1. Verificar que Nextcloud es accesible a través del nuevo nombre de dominio:

    Abra su navegador en https://YOUR_DOMAIN_NAME

  2. Si hay problemas, compruebe los logs:

    docker logs nginx-certbot
    docker logs app-server
    
  3. Configurar manualmente trusted_domains si es necesario:

    docker exec -u www-data app-server php occ --no-warnings config:system:set trusted_domains 1 --value="YOUR_DOMAIN_NAME"
    docker exec -u www-data app-server php occ --no-warnings config:system:set overwrite.cli.url --value="https://YOUR_DOMAIN_NAME/"
    
  4. Si se utiliza OnlyOffice, verifique su configuración:

    docker exec -u www-data app-server php occ --no-warnings config:system:set onlyoffice StorageUrl --value="https://YOUR_DOMAIN_NAME/"
    

Notas importantes

  • Tras realizar los cambios, es esencial borrar la caché del navegador;
  • Todas las credenciales de usuario siguen siendo las mismas que antes de cambiar el nombre de dominio;
  • Si su proveedor de DNS requiere tiempo para la actualización de los registros, puede producirse un cierto retraso antes de que el nuevo nombre de dominio empiece a funcionar;
  • Asegúrese de que el registro A en el DNS apunte a la dirección IP correcta de su servidor;
  • El registro PTR (DNS inverso) no es crítico para el funcionamiento de Nextcloud, pero puede actualizarse a través del panel de control para una consistencia total.

Pedir Nextcloud mediante la API

question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×