Por qué alojar su nube privada en un VPS
Guardar sus archivos en un proveedor de gran consumo implica aceptar cuotas, costes de almacenamiento crecientes e incertidumbre sobre la residencia de los datos. Una nube privada autoalojada le convierte en propietario de su Drive: sincronización en escritorio y móvil, compartición por enlace, edición colaborativa de documentos y calendario/contactos mediante CalDAV/CardDAV, todo ello en su propio hardware. Nextcloud va más allá del simple almacenamiento con una app store muy completa (Talk para las videollamadas, Office para la edición, Flow para la automatización). ownCloud, en su versión histórica en PHP, sigue siendo un gestor de archivos robusto y más ligero; su nueva generación Infinite Scale, escrita en Go, adopta una arquitectura de microservicios mucho más rápida y sin estado. La elección depende de su necesidad: suite completa o almacenamiento de alto rendimiento.
Lo que aporta una nube privada autoalojada
- Sincronización entre varios dispositivos sin cuota impuesta, limitada únicamente por el disco de su VPS.
- Datos y documentos alojados localmente: control completo de la residencia y del acceso.
- Compartición por enlace con contraseña, caducidad y permisos granulares.
- Sustitución de varios servicios (Drive, agenda, contactos, videollamadas) por una única plataforma.
- Cifrado en el servidor y en reposo, configurable según sus exigencias.
- Coste previsible ligado al VPS y no al volumen de datos almacenado.
Desplace la tabla
| Criterio | Nextcloud | ownCloud |
|---|---|---|
| Ecosistema de apps | App store muy rica (Talk, Office, Flow…) | Más limitado, centrado en los archivos |
| Arquitectura | Monolito PHP | PHP (histórico) o Infinite Scale en Go (microservicios) |
| Rendimiento con grandes volúmenes | Bueno, puede pesar con muchas apps | Excelente con Infinite Scale (sin estado) |
| Edición colaborativa | Nextcloud Office / OnlyOffice integrados | Mediante integración con OnlyOffice/Collabora |
| Videoconferencia | Nextcloud Talk nativo | No nativa |
| Base de datos | MariaDB/PostgreSQL recomendados | MariaDB/PostgreSQL recomendados |
| RAM recomendada | 2 a 4 GB | 2 GB (PHP), variable para Infinite Scale |
| Perfil objetivo | Suite colaborativa completa | Almacenamiento eficiente y depurado |
Requisitos de hardware y software
Una nube privada exige mucha E/S de disco, y ese es el factor determinante. Tanto para Nextcloud como para ownCloud (PHP), prevea un VPS de 2 vCPU y 4 GB de RAM, con un disco NVMe y al menos 40 GB de espacio (a dimensionar según sus archivos). No utilice nunca SQLite en producción: MariaDB o PostgreSQL son obligatorios, y Redis es muy recomendable para el bloqueo de archivos y la caché. ownCloud Infinite Scale, al ser sin estado y estar escrito en Go, tolera mejor las configuraciones de CPU modestas. Necesitará Docker Compose v2, un dominio dedicado (cloud.midominio.com), un reverse proxy HTTPS y una atención especial al límite de subida (client_max_body_size, php_upload_max_filesize) para los archivos grandes.
Desplegar su nube privada en un VPS
Preparar la base de datos y Redis
En el docker-compose, declare
mariadb:11(opostgres:16) con un volumen persistente y credenciales dedicadas, además de un servicioredis:alpine. Estos contenedores soportan la carga real; SQLite le bloqueará con unos pocos usuarios.Configurar el contenedor de la aplicación
Utilice la imagen
nextcloud:apache(uowncloud/server) apuntandoMYSQL_HOST,REDIS_HOSTy las credenciales. DefinaNEXTCLOUD_TRUSTED_DOMAINS=cloud.midominio.com, ya que sin ello la instancia rechazará las conexiones externas.Montar el volumen de datos
Monte un volumen dedicado en
/var/www/html/data(Nextcloud) para aislar los archivos de los usuarios del resto del contenedor y facilitar las copias de seguridad y el crecimiento del almacenamiento.Arrancar y finalizar la instalación
Ejecute
docker compose up -d, espere a la inicialización y termine después la configuración desde la interfaz web o por CLI conocc maintenance:install. Cree la cuenta de administrador.Reverse proxy, HTTPS y archivos grandes
Enrute
cloud.midominio.commediante Caddy/Traefik con Let's Encrypt. Aumenteclient_max_body_sizehasta 10G como mínimo en el proxy y alineephp_upload_max_filesizepara permitir la subida de archivos grandes sin error 413.Activar el cron y las copias de seguridad
Pase las tareas en segundo plano al modo
cron(y no AJAX) por fiabilidad, mediante un contenedor cron dedicado. Programe después un volcado de la base de datos y un snapshot del volumen de datos hacia un almacenamiento externo.
En Nextcloud, la mayoría de las advertencias de la pantalla de administración proceden de ajustes del reverse proxy olvidados: recuerde definir overwriteprotocol => https, overwrite.cli.url y la lista trusted_proxies en config.php; de lo contrario, los enlaces de compartición generan URL en http rotas. Active también la caché APCu además de Redis para aliviar la base de datos en cada carga de página. En ownCloud, si el rendimiento se estanca con grandes volúmenes, valore la migración a Infinite Scale, que elimina el cuello de botella de PHP.