Installer NextCloud sur Debian 10

Vous cherchez une alternative à Dropbox ou OwnCloud? Un Cloud que vous allez vous même hébergé? Vous êtes au bon endroit, suivez le guide.

Prérequis: Un serveur LAMP

Mise a jour:

sudo apt update && sudo apt upgrade && sudo apt install unzip

Installation de NextCloud:

On commence par créer la base de donnée pour NextCloud:

ATTENTION: Prenez bien soin et remplacer chaque $VARIABLE par vos propres paramètres.
sudo mysql -u $USERNAME -p$PASSWORD
CREATE DATABASE nextclouddb;

Si vous n’avez pas d’autre utilisateur que root il est conseillé d’en créer un:

CREATE USER '$USERNAME'@'localhost' IDENTIFIED BY '$PASSWORD';

On ajoute les privilèges à l’utilisateur:

GRANT ALL ON nextclouddb.* TO '$USERNAME'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Vérifiez la dernière version disponible de NextCloud ICI et téléchargez la:

cd /var/www/html/
sudo wget https://download.nextcloud.com/server/releases/nextcloud-$DerniereVersion.zip
sudo unzip nextcloud-$DerniereVersion.zip
sudo rm nextcloud-$DerniereVersion.zip
sudo chown -R www-data:www-data nextcloud
chmod -R 755 nextcloud

Configuration d’Apache:

-Si vous hébergez déjà un site et que vous désirez avoir NextCloud en sous domaine éditez votre conf Apache:

sudo nano /etc/apache2/sites-available/$VotreFichier.conf

Et ajoutez l’Alias:

        Alias /nextcloud/var/www/html/nextcloud
            <Directory /var/www/html/nextcloud>
               Options +FollowSymlinks
                AllowOverride All
                Require all granted
                <IfModule mod_dav.c>
                    Dav off
                </IfModule>
                SetEnv HOME /var/www/html/nextcloud
                SetEnv HTTP_HOME /var/www/html/nextcloud
            </Directory>

-Si vous desirez heberger NextCloud à la racine du dossier Apache, editez votre fichier conf:

sudo nano /etc/apache2/sites-available/$VotreFichier.conf

Et collez:

<VirtualHost *:80>
     ServerAdmin admin@example.com
     DocumentRoot /var/www/html/nextcloud/
     ServerName nextcloud.example.com
 
     Alias /nextcloud "/var/www/html/nextcloud/"
 
     <Directory /var/www/html/nextcloud/>
        Options +FollowSymlinks
        AllowOverride All
        Require all granted
          <IfModule mod_dav.c>
            Dav off
          </IfModule>
        SetEnv HOME /var/www/html/nextcloud
        SetEnv HTTP_HOME /var/www/html/nextcloud
     </Directory>
 
     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined
 
</VirtualHost>

Et on redémarre Apache:

sudo service apache2 restart

Et rendez-vous sur: http://$VotreNomDeDomaine/nextcloud

Créez votre nouveau compte admin et renseignez les informations concernant la base de donnée “nextclouddb” crée précédemment.

Le tour est joué:

Si ce n’est pas déjà le cas, vous pouvez sécuriser votre LAMP avec un certificat Let’s Encrypt.

Pense bête commandes NextCloud:

Dossier User en root:

cd /home/html/nextcloud/data/$USERNAME

Rescan des dossiers NextCloud:

sudo -u www-data php /home/html/nextcloud/occ files:scan --all