Ceci est une ancienne révision du document !
Table des matières
Installer Nextcloud et Collabora sur un NAS Synology DSM7.2+
Les grandes étapes :
- Installer et configurer le système de base Synology DSM
- Installer l'application “Container Manager” (gestion des différents containers)
- Installer l'application DNS Server
- Installer l'application Web Station
L'ensemble des applicatifs vont être exécutés dans le Container Manager sous forme de container.
Dans Container Manager :
- le volet “Projets” désigne un ensemble de container qui communiquent entre eux
- le volet “Conteneurs”, comme son nom l'indique, désigne les conteneurs installés par les projets
- le volet “Images” affiche les images des conteneurs “vierges” (les versions)
- le volet “Registre” liste les images disponibles dans les dépôts paramétrés (par défaut Docker Hub)
- le volet “Réseau” contient les différents réseaux virtuels, ils seront gérés automatiquement par les projets
- le volet “Journal” permet de consulter les logs, si nécessaire.
A noter aussi :
- les données des volumes sont stockés dans /volume1/\@docker/volumes
Le projet “Nextcloud” est le premier des deux projets à créer. Il contiendra :
- Un container Nextcloud (pour l'applicatif)
- Un container Mariadb (pour la base de données)
- Un container Redis (pour améliorer les performances du cache Nextcloud)
Le second projet “Collabora” :
- dispose de son propre projet car Nextcloud ne communique avec lui que par son URL externe.
Configurer le Synology de base
Placer les disques conformément à vos habitudes. Pour deux disques, configurez un RAID1 par exemple.
Configurer les DNS de votre registrar
Faire pointer cloud.mondomaine.fr vers l'IP fixe de votre connexion Internet.
Configurer les DNS de votre NAS Synology
Pour que votre serveur Synology soit accessible à la fois de l'intérieur de votre réseau, comme de l'extérieur, vous devez installer et configurer un serveur DNS sur votre Synology. Ceci-ci devra être attribué comme serveur DNS principal par le DHCP de votre box.
Les grandes étapes :
- Volet “Zones” : Créez une zone mondomaine.fr
- volet “Résolution” : activez les services de résolution et activez les redirecteurs en mettant l'IP de votre box dans le champ “Redirecteur 1”
Configurer la box
NAT du port 80 et 443 vers votre Synology
Obtenir des certificats
Panneau de configuration > Sécurité > Certificats
Après NAT, demandez à votre NAS de faire des requêtes pour le domaine cloud.mondomaine.fr et office.mondomaine.fr
Une fois le certificats obtenus, associez les à des services. Il faut pour cela que les services aient été créés, ils sont créés par le projet “Container Manager”
Pour les associer : Panneau de configuration > Sécurité > Certificats > Clic sur le certificat puis “Paramètres”
Un exemple de projet Nextcloud
volumes: nextcloud: custom_apps: config: data: #themes: db: services: mariadb: image: mariadb:latest restart: always command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW volumes: - db:/var/lib/mysql environment: - MYSQL_ROOT_PASSWORD=votremotdepasserootmariadb - MYSQL_PASSWORD=votremotdepassemariadb - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud nextcloud: image: nextcloud:27.1.2 restart: always ports: - 8080:80 links: - mariadb - redis volumes: - nextcloud:/var/www/html - custom_apps:/var/www/html/custom_apps - config:/var/www/html/config - data:/var/www/html/data #- themes:/var/www/html/themes/ environment: - MYSQL_PASSWORD=motdepassmariadb - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud - MYSQL_HOST=mariadb - REDIS_HOST_PASSWORD=votremotdepasseredis redis: image: redis restart: always command: redis-server --requirepass votremotdepasseredis
À noter dans ce projet :
- cette syntaxe est de type “docker-compose”
- on “mappe”/“monte” des volumes pour la base de données, ainsi que pour les différents stockages persistants de Nextcloud:
- /var/www/html pour le code nextcloud
- /var/www/html/custom_apps pour les applications téléchargées en plus de celle par défaut
- /var/www/html/config pour le fichier de configuration “config.php”
- /var/www/html/data pour les données
la version de Nextcloud a été figée à 27.1.2 pour faciliter la migration depuis cette même version d'un ancien NAS
Un exemple de projet Collabora
#name: 'code' services: collabora: #image: collabora/code:24.04.8.2.1 image: collabora/code:latest container_name: collabora environment: - aliasgroup1=192\\.168\\.1\\.254,https://.*fr # Listez ici les IP et nom de domaines depuis lesquels vous ouvrez votre collabora # - aliasgroup2=https://cloud.otherdomain.tld:443,https://cloud\\.otherdomain\\.tld:443 # enable for aliasgroup2 # - aliasgroup3=https://cloud.somedomain.tld:443,https://cloud\\.somedomain\\.tld:443 # enable for aliasgroup3 - username=artifaille - password=motdepassecollabora # Replace with a strong password - dictionaries=en_GB en_US de_DE fr_FR #- extra_params=--o:ssl.enable=true --o:ssl.termination=true --o:logging.level=warning --o:security.seccomp=false --o:security.capabilities=false - extra_params=--o:ssl.enable=false --o:ssl.termination=true --o:logging.level=warning --o:security.seccomp=false --o:security.capabilities=false - DONT_GEN_SSL_CERT ports: - "9980:9980" restart: always
Plan de sauvegarde
::