4-dic-2023
Nextcloud es un conjunto de software cliente-servidor para crear y utilizar servicios de alojamiento de archivos. Nextcloud cambió recientemente su nombre a Nextcloud Hub 6 . Es gratuito y de código abierto, lo que significa que cualquiera puede instalarlo y operarlo en sus propios dispositivos de servidor privados. En esta guía paso a paso, mostraremos cómo instalar Nextcloud Hub 6 en el Synology NAS usando Docker & Portainer.
Premisas. Suponemos que:
Pasos a seguir
Panel de control > Portal de inicio de sesión > Pestaña Avanzado > clic en Proxy inverso > clic en Crear.GeneralEnable HSTSEncabezado personalizadoCrear > clic en WebSocket > clic en Guardar.Conectividad > marcar Habilitar HTTP/2 > clic en Aplicar.Avanzado > marcar Habilitar compresión HTTP > clic en Aplicar.nextcloud. No usar mayúsculasnextcloud las siguientes carpetasconfigcustom_appsdatadbhtmlredisthemesmy.cnf y copiarlo dentro de la carpeta db.nextcloud que se creó. Para ello:File Station e ir a Propiedades > Pestaña PropiedadesPermisos > clic en Opciones avanzadas > clic en Hacer explícitos los permisos heredadosTodos (Everyone) > pestaña Editar > Marcar todos los permisos de lectura y escritura > clic en FinalizadoAplicar a esta carpeta, subcarpetas y archivos > clic en GuardarStacks > clic en + Add stacknextcloud
version: '3.9'
services:
mariadb:
container_name: Nextcloud-DB
image: mariadb:jammy
security_opt:
- no-new-privileges:true
user: 1026:100
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW --innodb-read-only-compressed=OFF
volumes:
- /volume1/docker/nextcloud/db:/var/lib/mysql:rw
- /volume1/docker/nextcloud/db:/etc/mysql/conf.d:rw
environment:
- MYSQL_ROOT_PASSWORD=rootpass
- MYSQL_PASSWORD=pepedato
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- TZ=Europe/Madrid
restart: on-failure:5
redis:
image: redis
container_name: Nextcloud-REDIS
hostname: nextcloudredis
user: 1026:100
healthcheck:
test: ["CMD-SHELL", "redis-cli ping || exit 1"]
volumes:
- /volume1/docker/nextcloud/redis:/data:rw
environment:
TZ: Europe/Madrid
restart: on-failure:5
nextcloud:
container_name: Nextcloud
ports:
- 8082:80
depends_on:
mariadb:
condition: service_started
redis:
condition: service_healthy
environment:
- REDIS_HOST=nextcloudredis
- NEXTCLOUD_TRUSTED_DOMAINS=nextcloud.yourname.synology.me 192.168.1.18
- TRUSTED_PROXIES=nextcloud.yourname.synology.me 192.168.1.18
- OVERWRITEHOST=nextcloud.yourname.synology.me
- OVERWRITEPROTOCOL=https
- MYSQL_PASSWORD=pepedato
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=mariadb
healthcheck:
test: curl -f http://localhost:80/ || exit 1
volumes:
- /volume1/docker/nextcloud/html:/var/www/html:rw
- /volume1/docker/nextcloud/custom_apps:/var/www/html/custom_apps:rw
- /volume1/docker/nextcloud/config:/var/www/html/config:rw
- /volume1/docker/nextcloud/data:/var/www/html/data:rw
- /volume1/docker/nextcloud/themes:/var/www/html/themes:rw
image: nextcloud
restart: on-failure:5
cron:
image: nextcloud:apache
container_name: Nextcloud-CRON
restart: always
volumes:
- /volume1/docker/nextcloud/config:/var/www/html/config:rw
- /volume1/docker/nextcloud/html:/var/www/html:rw
- /volume1/docker/nextcloud/custom_apps:/var/www/html/custom_apps:rw
- /volume1/docker/nextcloud/data:/var/www/html/data:rw
entrypoint: /cron.sh
depends_on:
mariadb:
condition: service_started
redis:
condition: service_started
Donde:
user: 1026:100 1026 is my personal UID value and 100 is my personal GID value. You have to type in your own values.TZ: Europe/Madrid se pondrá la zona horaria de donde estemos.MYSQL_PASSWORD=pepedato, pepedato es un ejemplo de password.nextcloud.yourname.synology.me 192.168.1.18nextcloud.yourname.synology.me 192.168.1.18nextcloud.yourname.synology.menextcloud.yourname.synology.me es un ejemplo de nuestra dirección URL para manejar NextCloud.192.168.1.18 es un ejemplo de la IP local de nuestro NAS, y va separada por un espacio de la dirección URL.Implementar la pila, Deploy the stack > Clic en él. El proceso de instalación puede llevar varios minutos, dependerá de la velocidad de la conexión a Internet. Si todo va bien, veremos el mensaje Success, Stack implementado correctamente en la parte superior derecha de la pantalla.