Les grandes étapes :
L'ensemble des applicatifs vont être exécutés dans le Container Manager sous forme de container.
Dans Container Manager :
A noter aussi :
Le projet “Nextcloud” est le premier des deux projets à créer. Il contiendra :
Le second projet “Collabora” :
Placer les disques conformément à vos habitudes. Pour deux disques, configurez un RAID1 par exemple.
Faire pointer cloud.mondomaine.fr vers l'IP fixe de votre connexion Internet.
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 :
NAT du port 80 et 443 vers votre Synology
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”
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 :
#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
Un script backup.sh executé quotidiennement, qui execute un rsync dans un autre dossier du /volume1 .
Tous les mois, le rsync ajoute l'option –delete pour supprimer l'historique.
Synology permet d'envoyer automatiquement un mail à l'execution d'une tâche planifiée, ce qui permet d'avoir le retour du script dans sa boite mail. Idéal pour s'assurer régulièrement du succès des backup.
:
: idéalement, passer au mode archivage de rsync permettrait d'avoir une rotation totale sans repartir à zéro à un jour donné.