Nextcloud¶
Dans cet article
Information
Nextcloud est un logiciel serveur open source. Il vous permet de créer votre propre service cloud pour le stockage de données et la collaboration. Il est basé sur le langage de programmation PHP et offre la possibilité d'utiliser diverses bases de données telles que MySQL, PostgreSQL et SQLite. Nextcloud prend en charge le chiffrement des données au niveau du client, ce qui garantit la sécurité lors du transfert de données sur Internet. Avec l'aide de Nextcloud, vous pouvez synchroniser des données entre différents appareils et travailler en ligne et hors ligne. Nextcloud offre un ensemble complet d'outils de collaboration tels que l'échange de documents, la gestion des tâches, les calendriers et les contacts. Nextcloud peut également être intégré à d'autres services tels que Google Drive, Dropbox et Microsoft OneDrive.
Nextcloud. Fonctionnalités clés¶
Nextcloud possède de nombreuses fonctionnalités qui en font un outil efficace pour le stockage et le traitement des données :
- Stockage de fichiers. Nextcloud vous permet de stocker des fichiers sur un serveur et d'y accéder via une interface web ou via des applications pour ordinateurs de bureau et appareils mobiles.
- Synchronisation de fichiers. La possibilité de synchroniser des fichiers entre différents appareils fait de ce service un outil pratique pour travailler dans diverses conditions.
- Contrôle de version. Nextcloud vous permet de sauvegarder plusieurs versions du même fichier. Il vous permettra également de restaurer des versions précédentes si nécessaire.
- Accès aux fichiers via l'interface web. Nextcloud dispose d'une interface web qui vous permet d'accéder aux fichiers via un navigateur, ce qui en fait un outil pratique pour travailler sur n'importe quel appareil.
- Gestion des calendriers et des tâches. Nextcloud vous permet de créer et de gérer des calendriers et des tâches, ce qui en fait un outil utile pour l'organisation.
- Gestion des contacts. Nextcloud vous permet de créer et de gérer des contacts, ce qui en fait un outil pratique pour gérer les communications.
- Accès aux fichiers via des applications. Nextcloud dispose d'applications pour ordinateurs de bureau et appareils mobiles qui vous permettent d'y accéder via elles.
- Extensibilité. Nextcloud dispose de nombreuses applications supplémentaires qui peuvent être installées et utilisées pour étendre les fonctionnalités. Il s'agit d'applications pour la collaboration en ligne, l'édition de documents, la gestion de projets, etc.
Fonctionnalités de déploiement¶
| ID | Nom du logiciel | Système d'exploitation compatible | VM | BM | VGPU | GPU | Min CPU (Cœurs) | Min RAM (GB) | Min HDD/SSD (GB) | Domaine personnalisé | Actif |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 16 | Nextcloud | Ubuntu 22.04 | + | + | + | + | 2 | 4 | 40 | Oui | COMMANDER |
Pour ce logiciel, il est possible de définir un domaine personnalisé lors de l'installation. Voir instructions
Pour ce logiciel, vous pouvez définir un domaine personnalisé lors de l'installation. Voir les instructions
- Nextcloud est inclus dans le kernel et aucune installation supplémentaire n'est requise. Nous fournissons une interface web via laquelle le service est installé et configuré.
- Les fichiers de configuration sont situés dans :
/opt/nextcloud- installation et configuration de Nextcloud ;/opt/nginx- installation et configuration du service Nginx ;/opt/nextcloud/compose.yml- exécution de docker compose, qui démarre un ensemble de conteneurs Nextcloud + Onlyoffice.
- La génération de certificats SSL est basée sur l'assemblage jonasal/nginx-certbot.
-
Ces commandes peuvent être nécessaires pour mettre à jour les versions des conteneurs et modifier le fichier de configuration.
- Pour arrêter les conteneurs, exécutez la commande
Puis
- Pour activer les conteneurs, exécutez la commande
Puis
-
Docker compose up -dexécute le fichiercompose.yml, qui télécharge et lance les conteneurs suivants :- db - conteneur, PostgreSQL est téléchargé et les paramètres suivants sont effectués :
- La base de données Nextcloud (ou base) est créée ;
- L'utilisateur Nextcloud est généré ;
- le mot de passe SSH (il est envoyé par e-mail à votre adresse e-mail une fois le serveur prêt à fonctionner après le déploiement du logiciel) ;
- Le port standard est 5432.
- redis - conteneur, stockant les appels à Nextcloud en mémoire et uniquement après les enregistrements dans la base de données PostgreSQL. PostgreSQL
- app - conteneur, le service Nextcloud possède les paramètres suivants :
- L'accès à une application est effectué depuis un navigateur web ou une application mobile en utilisant le lien
https://nextcloud(server_id).hostkey.in(par exemple,https://nextcloud16094.hostkey.in) ; - identifiant :
admin; - mot de passe : depuis ssh ;
- L'accès à une application est effectué depuis un navigateur web ou une application mobile en utilisant le lien
- onlyoffice-document-server - conteneur, le service OnlyOffice s'exécute sur le port 80.
Attention
Ce conteneur démarre en 6 minutes. Pendant ce temps, vous pouvez accéder à l'interface web de Nextcloud, télécharger et télécharger des fichiers, mais la possibilité de modifier des documents n'apparaîtra que 6 minutes après l'exécution de
docker compose up -d(il faut un certain temps pour démarrer certains composants).- nginx - conteneur, service Nginx qui accepte les requêtes sur les ports 80 et 443 et redirige les requêtes vers le conteneur Nextcloud.
- db - conteneur, PostgreSQL est téléchargé et les paramètres suivants sont effectués :
Remarque
Sauf indication contraire, nous installons par défaut la dernière version de publication du logiciel depuis le site web du développeur ou les dépôts du système d'exploitation.
Configuration des paramètres d'installation via Cloud-init¶
Lors de la commande d'un serveur avec Nextcloud, vous pouvez préconfigurer les principaux paramètres d'installation à l'aide de la configuration cloud-init pendant le processus de commande à l'étape Automation. Cela vous permet de définir automatiquement les identifiants d'administrateur, l'e-mail et le chemin de stockage des données :

Paramètres de configuration¶
Pour configurer Nextcloud via cloud-init, utilisez le format suivant :
write_files:
- path: "/opt/main.yml"
permissions: "0644"
content: |
nextcloud_admin_name: "root"
nextcloud_admin_pwd: "YOUR_PASSWORD"
nextcloud_admin_email: "admin@localhost"
nextcloud_data_path: "/opt/nextcloud-data"
Description des paramètres
- nextcloud_admin_name - nom du compte administrateur (par défaut :
admin) ; - nextcloud_admin_pwd - mot de passe administrateur (spécifiez votre mot de passe fort) ;
- nextcloud_admin_email - e-mail de l'administrateur pour les notifications ;
- nextcloud_data_path - chemin pour stocker les données Nextcloud (par défaut :
/opt/nextcloud-data).
Recommandation
Utilisez un mot de passe fort pour nextcloud_admin_pwd et un e-mail réel pour nextcloud_admin_email afin de recevoir les notifications système importantes.
Important
Après l'application de la configuration cloud-init, les paramètres spécifiés seront utilisés à la place des paramètres par défaut. Conservez ces données dans un endroit sécurisé.
Prise en main après le déploiement de Nextcloud¶
Une notification sera envoyée à l'adresse e-mail spécifiée lors de l'inscription indiquant que le serveur est prêt à fonctionner après le paiement de la commande. Elle contiendra l'adresse IP du VPS, ainsi que l'identifiant et le mot de passe pour la connexion. Les clients de notre entreprise gèrent le matériel dans le serveur et le panneau de contrôle API — Invapi.
Vous pouvez trouver les données d'autorisation soit dans l'onglet Configuration >> Tags du panneau de contrôle du serveur, soit dans l'e-mail qui a été envoyé.
- Lien d'accès au tableau de bord Nextcloud avec une interface web : dans la balise webpanel ;
- Identifiant :
admin; - Mot de passe : Envoyé à votre adresse e-mail après que le serveur est prêt à être utilisé suite au déploiement du logiciel.
Après avoir accédé au panneau de contrôle Nextcloud, vous devez entrer votre identifiant et votre mot de passe :

Après une connexion réussie, vous pouvez commencer à utiliser le service.
Remarque
Pour plus d'informations sur les paramètres de base de Nextcloud, consultez la documentation des développeurs.
Attention
Pour commander le serveur Nextcloud, vous devez choisir un serveur conformément aux recommandations des développeurs.
Changement du nom de domaine¶
Avant de commencer les travaux de changement de nom de domaine, il est recommandé de créer une sauvegarde de tous les fichiers spécifiés dans les instructions. Pour créer des sauvegardes des fichiers principaux, exécutez les commandes suivantes :
-
Créez un répertoire pour les sauvegardes
-
Copiez le fichier de configuration Nginx
-
Copiez le fichier Docker Compose
-
Copiez le script de configuration
-
Copiez le fichier de configuration Nextcloud
Ces commandes créeront des sauvegardes de tous les fichiers clés qui seront modifiés pendant le processus de changement de nom de domaine. En cas de problèmes, vous pouvez restaurer la configuration d'origine à partir de ces sauvegardes.
Restauration à partir des sauvegardes et suppression après migration réussie¶
Si le processus de changement de nom de domaine échoue et que vous devez restaurer la configuration d'origine, exécutez les commandes suivantes :
-
Restaurez le fichier de configuration Nginx
-
Restaurez le fichier Docker Compose
-
Restaurez le script de configuration
-
Restaurez le fichier de configuration Nextcloud
-
Redémarrez les conteneurs
-
Redémarrez nginx
Ces commandes restaureront tous les fichiers de configuration à leur état d'origine et redémarreront les services nécessaires.
Une fois que vous êtes sûr que le changement de nom de domaine a réussi et que tout fonctionne correctement (il est recommandé d'attendre au moins 24 à 48 heures pour des tests complets), vous pouvez supprimer en toute sécurité les sauvegardes :
-
Vérifiez le contenu du répertoire de sauvegarde
-
Supprimez l'ensemble du répertoire de sauvegarde
Avant la suppression, il est recommandé de vérifier le contenu du répertoire pour vous assurer que vous ne supprimez que les fichiers nécessaires.
Configuration des fichiers¶
-
Connectez-vous au serveur via SSH :
-
Modifiez le nom d'hôte (facultatif) :
-
Modifiez
/etc/hosts:Ajoutez une ligne liant le nouveau domaine à l'adresse IP du serveur :
(remplacez l'adresse IP et le nom de domaine par vos valeurs)
Configuration de Nginx¶
-
Trouvez et modifiez le fichier de configuration Nginx :
Remplacez toutes les occurrences de l'ancien nom de domaine (
nextcloud<server ID>.hostkey.in) par le nouveau (YOUR_DOMAIN_NAME) :- Ligne 4 :
server_name nextcloud<server ID>.hostkey.in;>server_name YOUR_DOMAIN_NAME; - Ligne 15 :
server_name nextcloud<server ID>.hostkey.in;>server_name YOUR_DOMAIN_NAME; - Ligne 17 :
ssl_certificate /etc/letsencrypt/live/nextcloud<server ID>.hostkey.in/fullchain.pem;>ssl_certificate /etc/letsencrypt/live/YOUR_DOMAIN_NAME/fullchain.pem; - Ligne 18 :
ssl_certificate_key /etc/letsencrypt/live/nextcloud<server ID>.hostkey.in/privkey.pem;>ssl_certificate_key /etc/letsencrypt/live/YOUR_DOMAIN_NAME/privkey.pem; - Ligne 19 :
ssl_trusted_certificate /etc/letsencrypt/live/nextcloud<server ID>.hostkey.in/chain.pem;>ssl_trusted_certificate /etc/letsencrypt/live/YOUR_DOMAIN_NAME/chain.pem;
- Ligne 4 :
-
Renommez le fichier de configuration :
-
Redémarrez le conteneur Nginx :
Configuration de Nextcloud¶
-
Modifiez le fichier Docker Compose :
Remplacez toutes les occurrences de l'ancien nom de domaine par le nouveau (YOUR_DOMAIN_NAME). Portez une attention particulière aux lignes contenant :
- Ligne 40 :
- OVERWRITECLIURL=https://nextcloud<server ID>.hostkey.in/ - Ligne 41 :
- OVERWRITEHOST=nextcloud<server ID>.hostkey.in
- Ligne 40 :
-
Modifiez le script de configuration Nextcloud :
Remplacez toutes les occurrences de l'ancien nom de domaine par le nouveau. Portez une attention particulière aux lignes :
- Ligne 11 :
if ! grep -q "nextcloud<server ID>.hostkey.in" trusted_domain.tmp; then - Ligne 13 :
docker exec -u www-data app-server php occ --no-warnings config:system:set trusted_domains $TRUSTED_INDEX --value="nextcloud<server ID>.hostkey.in" - Ligne 23 :
docker exec -u www-data app-server php occ --no-warnings config:system:set onlyoffice StorageUrl --value="https://nextcloud<server ID>.hostkey.in/
- Ligne 11 :
Application des modifications¶
-
Accédez au répertoire Nextcloud :
-
Arrêtez et supprimez les conteneurs existants :
Cette commande arrêtera et supprimera tous les conteneurs définis dans le fichier
compose.ymlmais conservera toutes les données dans les volumes. -
Démarrer les conteneurs Nextcloud :
-
Exécutez le script de configuration :
Si le script signale une erreur indiquant que la commande "maintenance:install" n'est pas définie, c'est normal — Nextcloud a déjà été installé.
Vérification et débogage¶
-
Vérifiez que Nextcloud est accessible via le nouveau nom de domaine :
Ouvrez votre navigateur sur
https://YOUR_DOMAIN_NAME
-
En cas de problèmes, vérifiez les journaux :
-
Configurez manuellement trusted_domains si nécessaire :
-
Si OnlyOffice est utilisé, vérifiez ses paramètres :
Notes importantes¶
- Après avoir apporté des modifications, il est essentiel de vider le cache de votre navigateur ;
- Tous les identifiants des utilisateurs restent les mêmes qu'avant le changement de nom de domaine ;
- Si votre fournisseur DNS nécessite du temps pour la mise à jour des enregistrements, un certain délai peut se produire avant que le nouveau nom de domaine ne commence à fonctionner ;
- Assurez-vous que l'enregistrement A dans le DNS pointe vers l'adresse IP correcte de votre serveur ;
- L'enregistrement PTR (DNS inverse) n'est pas critique pour le fonctionnement de Nextcloud, mais peut être mis à jour via le panneau de contrôle pour une cohérence totale.