Nextcloud et Docker : le duo parfait pour votre hébergement de fichiers en ligne
Nextcloud et Docker sont un combo très intéressant qui permet une grande rapidité et facilité d’installation. Peut importe le système du serveur, tant qu’il dispose du moteur docker.
Nextcloud est un logiciel de stockage en ligne open source qui vous permet de stocker, partager, synchroniser vos fichiers, calendrier, contacts, etc. Il offre une alternative aux services de stockage en ligne tels que Dropbox, Google Drive et OneDrive. Tout en vous permettant d’héberger vos données vous-même sur votre propre serveur.
Particulièrement populaire auprès des utilisateurs qui souhaitent avoir un contrôle total sur leurs données et qui préfèrent ne pas les confier à des entreprises tierces. Apprécié également pour sa flexibilité et ses nombreuses fonctionnalités. Il permet la possibilité d’accéder à vos données depuis n’importe quel appareil.
La Stack Docker Compose
Voici la stack docker-compose qui permet d’installer Nextcloud via docker, elle est disponible sur le hub docker.
version: '2'
services:
db:
image: mariadb:10.5
restart: always
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
volumes:
- db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=admin
- MYSQL_PASSWORD=admin
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
app:
image: nextcloud
restart: always
ports:
- 8080:80
links:
- db
volumes:
- nextcloud:/var/www/html
environment:
- MYSQL_PASSWORD=admin
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=db
volumes:
nextcloud:
db:
Je vous rappelle que pour une utilisation de production il est indispensable de modifier les variables et mot de passe par défaut. Vous pouvez déployer cette stack aussi bien sur portainer ainsi que via un fichier docker-compose.yml.
Initialisation de Nextcloud
L’interface web est directement disponible sur http://votre-ip:8080. Dans le cas où vous êtes rédigiez sur une page demandant la connexion à la base de données, il y a une erreur dans votre stack.
Dans mon cas, aucun problème, Nextcloud me demande de créer le compte administrateur de l’instance.
Ensuite on vous propose d’installer quelques applications de base pour l’utilisation de la solution cloud.
L’installation est très simple, on est déjà sur l’interface web et Nextcloud est prêt à être utilisé.
Mettre à jour son instance (OS & Nextcloud)
Attention tout de même, ce genre d’installation présente des risques de pertes de données, j’ai uniquement abordé l’installation de Nextcloud sur docker. Il vous faudra également réfléchir sur la haute disponibilité de l’instance, la sauvegarde des données avec la méthode 3, 2, 1.
Maintenir son instance n’est pas une option. J’entends par là mettre à jour Nextcloud en lui-même, opération simple, faisable dans les paramètres de l’instance. Il ne faut pas oublier de mettre à jour « l’OS » les conteneurs qui font tourner l’instance. Le conteneur MariaDB est souvent mis à jour !
Enfin, si vous souhaitez accéder à votre instance hors de votre réseau local, il vous faudra publier votre instance sur internet. Heureusement, j’ai déjà un article qui résume la procédure : Nginx Proxy Manager.