Files
2026-08-09 17:15:58 +00:00

45 lines
1.9 KiB
Markdown

# Nextcloud
Plataforma de archivos y colaboración con MariaDB, Redis, tareas cron y OnlyOffice Document Server.
## Arquitectura y propósito
MariaDB guarda metadatos, Redis aporta bloqueo y caché, `nextcloud` sirve la web y `nextcloud-cron` ejecuta tareas en segundo plano sobre los mismos volúmenes. OnlyOffice es un servicio independiente para editar documentos y se integra mediante JWT.
## Configuración
- `NC_DOMAIN`, `TRUSTED_PROXIES` y las variables `OVERWRITE*` hacen que Nextcloud genere HTTPS correctamente detrás de Traefik.
- `MYSQL_*` debe coincidir en Nextcloud, cron y MariaDB.
- `NEXTCLOUD_ADMIN_*` sólo inicializa la primera instalación; después administra usuarios desde Nextcloud.
- `SMTP_*` configura notificaciones a través de `mail_internal`.
- `OO_DOMAIN`, `OO_JWT_SECRET` y `OO_SECURE_LINK_SECRET` protegen la comunicación con OnlyOffice; el JWT configurado en la app de Nextcloud debe ser idéntico.
- `/opt/nextcloud/html`, `config`, `data`, `custom_apps` y `themes` se comparten con cron para ejecutar el mismo código y configuración.
Redis no sustituye una copia de seguridad. Respalda MariaDB, configuración y datos de forma consistente, preferiblemente activando antes el modo mantenimiento.
## Requisitos
- Docker Compose
- Redes externas `proxy` y `mail_internal`
- Un archivo `.env` local con dominios, credenciales, secretos de OnlyOffice, proxy de confianza y correo SMTP
- Almacenamiento persistente bajo `/opt/nextcloud` y `/opt/onlyoffice`
## Despliegue
```bash
cd nextcloud
docker compose --env-file .env config
docker compose --env-file .env up -d
```
Traefik expone Nextcloud y OnlyOffice en los dominios configurados por `NC_DOMAIN` y `OO_DOMAIN`.
## Operación
```bash
docker compose --env-file .env ps
docker compose --env-file .env logs -f nextcloud nextcloud-cron onlyoffice-documentserver
```
El montaje `/opt/paperless/media` es opcional y se presenta a Nextcloud en modo de sólo lectura.