Debian : Installer Nextcloud
Table des matières
nextCloud est un logiciel libre offrant une plateforme de services de stockage et partage de fichiers et d'applications diverses en ligne. Il est présenté comme une alternative à Dropbox lequel est basé sur un cloud public.
Ici, je réaliserai une installation via les sources officielles, car on ne sera pas contraint d'utiliser la version présente dans les dépôts de Debian qui n'est pas à jour, ou ajouter un dépôt tiers.
Nextcloud étant une plateforme web, il est nécessaire d'installer et de configurer un serveur Web, PHP et un système de gestion de Base de Données.
On installe tout ce qu'il faut sur notre serveur pour faire fonctionner nextCloud (LAMP + wget + bzip2 + SSL) :
Reportez-vous à cet article pour plus d'infos sur l'installation et la configuration d'un serveur Web sur Debian : https://www.linuxtricks.fr/wiki/debian-installer-un-serveur-lamp-apache-mysql-php
Dans un premier temps, on récupère les sources directement depuis le site officiel : https://nextcloud.com/install/#instructions-server
Ici, je vais le récupérer directement sur le serveur via wget :
On extrait ensuite l'archive :
On met apache comme propriétaire des fichiers nextcloud :
Ici, vous l'aurez compris, nextcloud sera joignable via http://serveur/nextcloud Vous pouvez décompresser à la racine du serveur web si votre serveur ne sert qu'à NextCloud !
Lors de l'installation, on a plusieurs choix : MySQL/MariaDB, PostgreSQL, Sqlite.
Pour des petites bases de données, on peut utiliser SQLite :
Pour des bases de données plus grosses, on peut choisir MariaDB :
Si on est sur une nouvelle base de données, on l'initialise :
On créé ensuite la base de données :
Et on se créé un utilisateur pour nextcloud :
On créé un fichier pour la configuration du "VirtualHost" de nextCloud nommé /etc/httpd/conf.d/owncloud.conf pour autoriser le .htaccess (directive AllowOvveride) et notre alias :
On redémarre le serveur Web pour prendre en compte la nouvelle configuration :
On se connecte ensuite sur le serveur : http://ip_serveur/nextcloud
On arrive sur la page de configuration.
On créé le premier utilisateur (qui sera administrateur)
On sélectionne la base de données "MySQL/MariaDB" en renseignant la base de données, l'utilisateur et le mot de passe associé dans les champs adéquats :
Et voilà, nextcloud est installé !
Si on veut mettre à jour nextcloud, on peut procéder de 2 façons.
Dans un premier temps, on récupère les sources directement depuis le site officiel : https://nextcloud.com/install/#instructions-server
On active le mode maintenance :
On extrait l'archive précédemment téléchargée :
On met apache comme propriétaire des fichiers nextcloud :
On met à jour :
Et on désactive le mode maintenance :
On extrait ensuite l'archive au même endroit que la version précédente :
On met apache comme propriétaire des fichiers nextcloud :
On se connecte ensuite sur le serveur : http://ip_serveur/nextcloud
Et on fait la mise à jour :
Une fois fait, on est redirigé directement sur la nouvelle version :
J'ai découpé le tuto en 2, voir la suite ici : https://www.linuxtricks.fr/wiki/owncloud-et-nextcloud-configuration-et-administration-avec-le-script-occ
Introduction
nextCloud est un logiciel libre offrant une plateforme de services de stockage et partage de fichiers et d'applications diverses en ligne. Il est présenté comme une alternative à Dropbox lequel est basé sur un cloud public.
Ici, je réaliserai une installation via les sources officielles, car on ne sera pas contraint d'utiliser la version présente dans les dépôts de Debian qui n'est pas à jour, ou ajouter un dépôt tiers.
Prérequis
Nextcloud étant une plateforme web, il est nécessaire d'installer et de configurer un serveur Web, PHP et un système de gestion de Base de Données.
Installation des prérequis
On installe tout ce qu'il faut sur notre serveur pour faire fonctionner nextCloud (LAMP + wget + bzip2 + SSL) :
Code BASH :
apt install apache2 libapache2-mod-php php php-cli php-{curl,gd,intl,memcache,xml,zip,mbstring,json} bzip2 wget
Reportez-vous à cet article pour plus d'infos sur l'installation et la configuration d'un serveur Web sur Debian : https://www.linuxtricks.fr/wiki/debian-installer-un-serveur-lamp-apache-mysql-php
Installation de nextCloud
Dans un premier temps, on récupère les sources directement depuis le site officiel : https://nextcloud.com/install/#instructions-server
Ici, je vais le récupérer directement sur le serveur via wget :
Code BASH :
wget https://download.nextcloud.com/server/releases/nextcloud-18.0.0.tar.bz2
On extrait ensuite l'archive :
Code BASH :
tar -xjf nextcloud-18.0.0.tar.bz2 -C /var/www/html/
On met apache comme propriétaire des fichiers nextcloud :
Code BASH :
chown -R www-data:www-data /var/www/html/nextcloud
Ici, vous l'aurez compris, nextcloud sera joignable via http://serveur/nextcloud Vous pouvez décompresser à la racine du serveur web si votre serveur ne sert qu'à NextCloud !
Configuration des services
Base de données
Lors de l'installation, on a plusieurs choix : MySQL/MariaDB, PostgreSQL, Sqlite.
SQLite
Pour des petites bases de données, on peut utiliser SQLite :
Code BASH :
apt install sqlite3 php-sqlite3
MySQL / MariaDB
Pour des bases de données plus grosses, on peut choisir MariaDB :
Code BASH :
apt install mariadb-server
Si on est sur une nouvelle base de données, on l'initialise :
Code BASH :
mysql_secure_installation
On créé ensuite la base de données :
Code BASH :
mysql -u root -p
Code SQL :
CREATE DATABASE clouddb;
Et on se créé un utilisateur pour nextcloud :
Code SQL :
GRANT ALL ON clouddb.* TO 'clouddbuser'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES;
Apache
On créé un fichier pour la configuration du "VirtualHost" de nextCloud nommé /etc/httpd/conf.d/owncloud.conf pour autoriser le .htaccess (directive AllowOvveride) et notre alias :
Code BASH :
vi /etc/apache2/sites-enabled/nextcloud.conf
Code BASH :
<IfModule mod_alias.c> Alias /owncloud /var/www/html/nextcloud </IfModule> <Directory "/var/www/html/nextcloud"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>
On redémarre le serveur Web pour prendre en compte la nouvelle configuration :
Code BASH :
systemctl restart apache2.service
Configuration de nextCloud
On se connecte ensuite sur le serveur : http://ip_serveur/nextcloud
On arrive sur la page de configuration.
On créé le premier utilisateur (qui sera administrateur)
On sélectionne la base de données "MySQL/MariaDB" en renseignant la base de données, l'utilisateur et le mot de passe associé dans les champs adéquats :
Et voilà, nextcloud est installé !
Mettre à jour Nextcloud
Si on veut mettre à jour nextcloud, on peut procéder de 2 façons.
Dans un premier temps, on récupère les sources directement depuis le site officiel : https://nextcloud.com/install/#instructions-server
Code BASH :
cd /root wget https://download.nextcloud.com/server/releases/nextcloud-18.0.1.tar.bz2
Méthode CLI
On active le mode maintenance :
Code BASH :
cd /var/www/html/nextcloud/ sudo -u www-data php occ maintenance:mode --on
On extrait l'archive précédemment téléchargée :
Code BASH :
cd /root tar -xjf nextcloud-18.0.1.tar.bz2 -C /var/www/html/
On met apache comme propriétaire des fichiers nextcloud :
Code BASH :
chown -R www-data:www-data /var/www/html/nextcloud/
On met à jour :
Code BASH :
cd /var/www/html/nextcloud/ sudo -u www-data php occ upgrade
Et on désactive le mode maintenance :
Code BASH :
sudo -u www-data php occ maintenance:mode --off
Méthode Web
On extrait ensuite l'archive au même endroit que la version précédente :
Code BASH :
tar -xjf nextcloud-18.0.1.tar.bz2 -C /var/www/html/
On met apache comme propriétaire des fichiers nextcloud :
Code BASH :
chown -R www-data:www-data /var/www/html/nextcloud/
On se connecte ensuite sur le serveur : http://ip_serveur/nextcloud
Et on fait la mise à jour :
Une fois fait, on est redirigé directement sur la nouvelle version :
Configuration et administration avec le script OCC
J'ai découpé le tuto en 2, voir la suite ici : https://www.linuxtricks.fr/wiki/owncloud-et-nextcloud-configuration-et-administration-avec-le-script-occ