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. Se basa en el lenguaje de programación PHP y proporciona 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 en línea y fuera de línea. Nextcloud ofrece un extenso 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. Características principales

Nextcloud tiene muchas características que lo convierten en una herramienta efectiva para almacenar y procesar datos:

  • Almacenamiento de archivos. Nextcloud le permite almacenar archivos en un servidor y acceder a ellos a través de una interfaz web o a través de aplicaciones para computadoras de escritorio y dispositivos móviles.
  • Sincronización de archivos. La capacidad de sincronizar archivos entre diferentes dispositivos hace que el servicio sea 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 conveniente para trabajar en cualquier dispositivo.
  • Gestión de calendarios y tareas. Nextcloud le permite crear y gestionar calendarios y tareas, lo que lo convierte 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 gestionar comunicaciones.
  • Acceso a archivos a través de aplicaciones. Nextcloud tiene aplicaciones para computadoras de escritorio y dispositivos móviles que le permiten acceder a los archivos a través de ellas.
  • Ampliabilidad. Nextcloud tiene muchas aplicaciones adicionales que se pueden instalar y utilizar para ampliar la funcionalidad. Son aplicaciones para colaboración en línea, edición de documentos, gestión de proyectos, etc.

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 ORDER

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

  • Nextcloud está incluido en el kernel y no requiere 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 - ejecutar docker compose, que inicia un conjunto de contenedores de Nextcloud + Onlyoffice.
  • La generación de certificados 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 e inicia los siguientes contenedores:

    • db - contenedor, se descarga PostgreSQL y se realizan los siguientes ajustes:
      • Se crea la base de datos (o base) de Nextcloud;
      • Se genera el usuario de Nextcloud;
      • la contraseña para SSH (se envía por correo electrónico a su dirección de correo electrónico una vez que el servidor está listo para funcionar después de implementar el software);
      • El puerto estándar es 5432.
    • redis - contenedor, almacena llamadas a Nextcloud en la memoria y solo después registros en la base de datos PostgreSQL. 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: desde ssh;
    • onlyoffice-document-server - contenedor, el servicio OnlyOffice se ejecuta en el puerto 80.

    Atención

    Este contenedor se inicia en 6 minutos. Durante este tiempo, puede ir a la interfaz web de Nextcloud, cargar y descargar archivos, pero la capacidad de editar documentos aparecerá solo 6 minutos después de ejecutar docker compose up -d (toma algún tiempo iniciar algunos componentes).

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

Nota

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

Configuración de parámetros de instalación mediante Cloud-init

Al solicitar un servidor con Nextcloud, puede preconfigurar los parámetros de instalación principales utilizando la configuración de cloud-init durante el proceso de pedido en la etapa de Automatization. Esto le permite configurar automáticamente las credenciales del 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 (predeterminado: admin);
  • nextcloud_admin_pwd - contraseña de administrador (especifique su contraseña fuerte);
  • nextcloud_admin_email - correo electrónico del administrador para notificaciones;
  • nextcloud_data_path - ruta para almacenar datos de Nextcloud (predeterminado: /opt/nextcloud-data).

Recomendación

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

Importante

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

Primeros pasos después de implementar Nextcloud

Se enviará una notificación al correo electrónico especificado durante el registro de que el servidor está listo para trabajar después de pagar 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 y la API — Invapi.

Puede encontrar los datos de autorización en la pestaña Configuration* >> **Tags del panel de control del servidor o en el correo electrónico que se envió.

  • Enlace para acceder al panel de Nextcloud con una interfaz web: en la etiqueta webpanel;
  • Inicio de sesión: admin;
  • Contraseña: Enviada a su dirección de correo electrónico después de que el servidor esté listo para su uso tras la implementación del software.

Después de moverse al panel de control de Nextcloud, debe ingresar su inicio de sesión y contraseña:

Después de iniciar sesión correctamente, puede comenzar a utilizar el servicio.

Nota

Para obtener más información sobre la configuración básica de Nextcloud, consulte la documentación de los desarrolladores.

Atención

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

Cambio del nombre de dominio

Antes de comenzar el trabajo de 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. Cree un directorio para copias de seguridad

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

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

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

    cp /opt/nextcloud/set_configuration.sh /root/nextcloud_backup/
    
  5. Copie 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 modificarán durante el proceso de cambio del nombre de dominio. En caso de problemas, puede restaurar la configuración original desde estas copias de seguridad.

Restauración desde copias de seguridad y eliminación después de una migración exitosa

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

  1. Restaure el archivo de configuración de Nginx

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

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

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

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

    cd /opt/nextcloud
    docker compose down
    docker compose up -d
    
  6. Reinicie 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 del nombre de dominio fue exitoso y todo funciona correctamente (se recomienda esperar al menos 24-48 horas para pruebas completas), puede eliminar las copias de seguridad con seguridad:

  1. Verifique el contenido del directorio de copias de seguridad

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

    rm -rf /root/nextcloud_backup/
    

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

Configuración de archivos

  1. Conéctese al servidor mediante SSH:

    ssh root@IP_ADDRESS
    
  2. Cambie el nombre de host (opcional):

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

    nano /etc/hosts
    

    Agregue 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 con sus valores)

Configuración de Nginx

  1. Busque y edite el archivo de configuración de Nginx:

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

    Reemplace todas las instancias del nombre de dominio antiguo (nextcloud<server ID>.hostkey.in) con 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ínea 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. Cambie el nombre del 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. Reinicie el contenedor Nginx:

    docker restart nginx-certbot
    

Configuración de Nextcloud

  1. Edite el archivo Docker Compose:

    nano /opt/nextcloud/compose.yml
    

    Reemplace todas las instancias del nombre de dominio antiguo con 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. Edite el script de configuración de Nextcloud:

    nano /opt/nextcloud/set_configuration.sh
    

    Reemplace todas las instancias del nombre de dominio antiguo con 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/

Aplicación de cambios

  1. Navegue al directorio de Nextcloud:

    cd /opt/nextcloud
    
  2. Detenga y elimine los contenedores existentes:

    docker compose down
    

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

  3. Inicie los contenedores de Nextcloud:

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

    bash /opt/nextcloud/set_configuration.sh
    

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

Verificación y depuración

  1. Verifique que Nextcloud sea accesible mediante el nuevo nombre de dominio:

    Abra su navegador en https://YOUR_DOMAIN_NAME

  2. Si hay problemas, verifique los registros:

    docker logs nginx-certbot
    docker logs app-server
    
  3. Configure 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

  • Después de realizar cambios, es esencial borrar la caché de su navegador;
  • Todas las credenciales de usuario permanecen iguales que antes de cambiar el nombre de dominio;
  • Si su proveedor de DNS requiere tiempo para actualizar los registros, puede producirse algún retraso antes de que el nuevo nombre de dominio comience a funcionar;
  • Asegúrese de que el registro A en 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 se puede actualizar a través del panel de control para una consistencia completa.

Pedido de Nextcloud mediante la API

Para instalar este software mediante la API, siga estas instrucciones.


Algunos de los contenidos de esta página fueron creados o traducidos utilizando IA.

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